我目前有一个项目,我正在使用makefile构建。这个项目包括一些额外的软件(jflex),它不在一个默认的系统搜索路径上(它安装在(/ opt / local / bin /)。我的.profile文件将这个目录添加到我的PATH中,因此构建项目从终端窗口成功。
但是,如果我尝试从XCode(带有外部管理的makefile的XCode项目)中运行makefile,它会失败,因为它没有在/ opt / local / bin中查找jflex,因此无法找到它。
如何更改XCode项目的设置以在XCode中正确构建?我假设在XCode中有某种路径设置,或者我可以让XCode给出的某种附加参数,以便它不会失败。或者,我可以将路径硬编码到我的makefile中,如果我能检测到它是从XCode运行的(虽然这对我来说是不太可取的选项,因为我的makefile有时需要从命令行调用,我宁愿保持简单)。
我使用XCode比较新,所以如果我错过了一些明显的东西,我会道歉。
答案 0 :(得分:3)
您可以将“shell脚本”称为“外部构建工具配置”窗格中的“构建工具”,而不是直接调用make
。然后修改shell脚本中的路径并从那里调用make
,即
#!/bin/sh
PATH=/opt/local/bin:$PATH
make
不要忘记设置权限,以便Xcode可以运行脚本,并提供脚本的完整路径作为“构建工具”。
答案 1 :(得分:1)
可能不是最好的方法,但是你能从命令行启动XCode吗?它将从它继承Path。
或者,在XCode启动器中更改:
XCode
到
PATH=$PATH:/opt/local/bin/ XCode
可能有效(取决于发射器)
或者,您是否重新启动了启动器/窗口管理器(注销并在设置.profile后再次返回)?