Xcode 5.1中缺少MOGENATOR

Xcode 5.1中缺少MOGENATOR,xcode,Xcode,我在我的机器上克隆了DuckDuckGo开源iOS项目。编译代码时,我从Xcode中得到一个Shell脚本调用错误: /Users/nirbhay/Library/Developer/Xcode/DerivedData/DuckDuckGo-fbzkqkdplgwdyzbcwxtfiydcqkfj/Build/Intermediates/DuckDuckGo.build/Debug-iphonesimulator/Mogenerator.build/Script-5BFF24C116F77F07

我在我的机器上克隆了DuckDuckGo开源iOS项目。编译代码时,我从Xcode中得到一个Shell脚本调用错误:

/Users/nirbhay/Library/Developer/Xcode/DerivedData/DuckDuckGo-fbzkqkdplgwdyzbcwxtfiydcqkfj/Build/Intermediates/DuckDuckGo.build/Debug-iphonesimulator/Mogenerator.build/Script-5BFF24C116F77F0700844D3B.sh: 
line 3: /usr/local/bin/mogenerator: No such file or directory
我从DMG安装了mogenerator。似乎mogenerator被放入了/usr/bin/目录,而不是Xcode期望的/usr/local/bin/目录。因此,我在local/中手动创建了bin目录,并在那里复制了mogenerator文件。代码现在可以编译了


我不是一个专家,所以我所做的对我来说就像是一个黑客。有人能告诉我为什么会发生这种情况,以及是否有正确的方法来实现这一点吗?

mogenerator是在目标的“构建阶段”从shell脚本调用的。在您的例子中,似乎使用绝对路径调用mogenerator

/usr/local/bin/mogenerator --model ...
如果mogenerator安装在/usr/bin/中,则可以将该行更改为

/usr/bin/mogenerator --model ...
或者干脆

mogenerator --model ...

因为/usr/bin/在Xcode的默认搜索路径中。

所以您的意思是问题在项目的设置中。mogenerator的路径被硬编码到与默认安装位置不同的位置?@Nirbhay:是的,没错。(但是默认安装位置可能取决于它的安装方式。)我明白了。因此,它可能会有所不同,例如,如果我是通过自制而不是DMG安装的。有趣。谢谢,这真的把事情弄清楚了。