开发者

How do you change the PATH used in an external makefile build using XCode?

开发者 https://www.devze.com 2023-01-22 15:23 出处:网络
I currently have a project that I\'m building with a makefile. This project includes some additional software (jflex) which is not on one of the default system search paths (it\'s installed to (/opt/l

I currently have a project that I'm building with a makefile. This project includes some additional software (jflex) which is not on one of the default system search paths (it's installed to (/opt/local/bin/). My .profile file adds this directory to my PATH, and so building the project from a terminal window succeeds.

However, if I try to run the makefile from within XCode (XCode project with an externally managed makefile), it fails since it's not looking in /opt/local/bin for jflex, and as such can't find it.

How can I change the settings of my XCode project to correctly build from within XCod开发者_运维知识库e? I assume there's some kind of path setting in XCode, or some kind of additional argument I can have XCode give to make so that it doesn't fail. Alternately, I could hardcode the path into my makefile if I could detect that it was being run from XCode (although this is the less preferable option for me, since my makefile will sometimes need to be called from the command line and I'd rather keep it simple).

I'm relatively new to using XCode, so apologies if I've missed something obvious.


Instead of calling make directly, you could call a shell script as the "Build Tool" in the "External Build Tool Configuration" pane. Then modify the path in the shell script and call make from there, i.e.

#!/bin/sh
PATH=/opt/local/bin:$PATH
make 

Don't forget to set permissions such that Xcode can run the script, and provide the full path to the script as the "Build Tool".


May not be the best way, But can you launch XCode from command line. It will inherit the Path from it.

Or, in the XCode launcher change:

XCode

to

PATH=$PATH:/opt/local/bin/ XCode

may work (depending on launcher)

Or, did you relaunch the launcher/window manager (logout and back in again after setting .profile)?

0

精彩评论

暂无评论...
验证码 换一张
取 消