繁体   English   中英

XCode无法识别环境变量

[英]XCode doesn't recognize environment variables

我使用以下脚本在OSX Yosemite 10.10.5上运行XCode(7.0.1 7A1001):

export FOO=bar #this should not be necessary, but just in case
launchctl setenv FOO bar #should make it visible to all GUI applications (=XCode)
open -a xcode

然后我打开一个包含两个项目的工作区: App1App2 在这两个项目中,我将$(HOME)/$(FOO)放在Header Search Paths字段中。

  • App1中,它按预期解析为/Users/ohads/bar
  • App2中 ,解析为/Users/ohads/ - 注意HOME变量是如何解析的,但FOO变量不是。

这里发生了什么? 为什么会出现差异? 如何在App2中使FOO工作 - 是否有一些我丢失的特殊标志或声明?

顺便说一句,好像这并不奇怪,即使我只使用export ,App1也能工作(而不是应用于GUI应用程序的launchctl ,因为export只会影响现金应用程序)。

看起来这与新的XCode 7行为有关 为了使XCode使用环境变量,必须发出以下命令:

$ defaults write com.apple.dt.Xcode UseSanitizedBuildSystemEnvironment -bool NO

发出此命令后, exportlaunchctl工作(根据chepner的评论)。 我只能猜测它在App1中工作,因为它是在较旧的XCode版本中创建的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM