错误:无法运行/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/usr/bin/ibtool(文件不存在)

7
我正在尝试使用ibtool进行iOS开发(本地化),但当我从终端运行它时,出现以下错误:
Error: Can't run /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/usr/bin/ibtool (no such file).

出了什么问题?

3个回答

14

经过一番研究,我在Stack中找到了几个解决类似问题的好答案,但没有通用的解决方案,所以我决定自己创造一个。

问题的原因是:在现代版本的OSX中,如果你从App Store安装Xcode,它会像所有其他应用程序一样安装自己 - 这意味着它在与历史不同的不同目录。不幸的是,这对Xcode及其命令行工具以及事实上远远超出了此问题范围的其他东西都产生了深远的影响。

因此,在他们修复之前,让我们来谈谈解决方法。许多人建议更改Xcode系统变量以指向“App Store”文件夹,但我认为这是一种危险的过度杀手 - 如果他们修复了路径设置,您就不知道会导致何种混乱!

相反,我建议使用终端仅更改影响ibtool(或您正在使用的任何工具)的系统链接,如下所示:

推荐的解决方案

步骤1:删除旧的系统链接

sudo rm /usr/bin/ibtool

第二步:创建一个新的系统链接

sudo ln -s /Applications/Xcode.app/Contents/Developer/usr/bin/ibtool /usr/bin/ibtool

仅供参考,这里有另一个命令可以解决此问题,但是由于上述原因,我不建议使用它:

sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer

我可以看出 xcode-select 可能是解决所有/Developer相关错误的正确方法,但在这种情况下,我会选择重新安装Xcode而不使用App Store,并从一开始就将其运行良好。

对于我们中的其他人已经过了App Store的路,无法重新开始,请参考上面的内容。


你可以使用“xcrun 命令”从 Xcode 捆绑包中启动二进制文件。您尝试过“xcrun ibtool”吗? - David Snabel-Caunt
您需要进入恢复模式才能成功删除/usr/bin/*而不出现失败错误。 要进入恢复模式,您需要重新启动您的Mac,并在启动时按下⌘+R。 - Amit Rahav

0

绝对的第一步是获取Xcode并安装命令行工具。这样做将把工具放入/usr/bin中,而该路径已经在您的PATH中。前往“Xcode”::“首选项”::“下载”::“组件”,那里应该有一个安装命令行工具的选项。如果没有,请前往“Xcode”::“打开开发人员工具”::“更多开发人员工具”并下载最新的命令行工具。


0

由于您正在使用Xcode 7,因此libtool位于以下路径:

/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool

在这里你可以做的就是简单地复制它,然后粘贴到错误指定的位置:

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/libtool

如果您计划在设备上运行应用程序,还应将文件粘贴到以下路径中:

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/libtool

如果你找不到usr/bin文件夹,那么就创建一个叫做usr的文件夹,并在其中创建另一个叫做bin的文件夹。然后把libtool粘贴到bin文件夹中即可。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接