XCConfig 在 Xcode 重新启动之前不会刷新

Posted

技术标签:

【中文标题】XCConfig 在 Xcode 重新启动之前不会刷新【英文标题】:XCConfig not refreshing until Xcode is restarted 【发布时间】:2016-12-20 21:37:11 【问题描述】:

我想要一个目标和几个编译方案,并有一些由方案的预操作脚本声明的编译器定义。

预操作脚本正在生成一个 comp.xcconfig 文件,该文件由 [Release|Debug]Config.xcconfig #included。

我生成的 comp.xcconfig 包含这一行:

GCC_PREPROCESSOR_DEFINITIONS = $(inherited) MY_TEST

我的应用包括以下几行:

#ifdef MY_TEST
    #error ye
#else
    #error oy
#endif

如预期的那样,使用上述配置进行编译会导致错误“ye”。

如果我将 comp.xcconfig 更改为:

GCC_PREPROCESSOR_DEFINITIONS = $(inherited) MY_TEST1234

我还在说“你”。但是如果我退出 Xcode 并重新启动它,我会 得到预期的“oy”。

我的问题:

有没有办法强制 Xcode 跟踪 xcconfig 文件的更改而无需退出 Xcode?​​p>

【问题讨论】:

自 Xcode 8.2.1 更新以来我遇到了同样的问题。如果您还没有,请submit a bug report。 在 Xcode 8.3 beta 中解决:“对 xcconfig 文件的更改不再需要重新启动 Xcode 才能生效。(29805284)” 【参考方案1】:

根据 Xcode 8.3 beta 发行说明,这个问题是固定的:

• 对 xcconfig 文件的更改不再需要重新启动 Xcode 才能执行 影响。 (29805284)

http://adcdownload.apple.com/Developer_Tools/Xcode_8.3_beta/Release_Notes_for_Xcode_8.3_beta.pdf

【讨论】:

以上是关于XCConfig 在 Xcode 重新启动之前不会刷新的主要内容,如果未能解决你的问题,请参考以下文章

有没有办法在 Xcode 9 中更改每个方案的 .xcconfig 文件?

Xcode Debugging 进程只能通过重新启动 Mac OS 来终止

具有多个 .xcconfig 文件和 cocoapods 的复杂 Xcode 项目

Xcode使用xcconfig文件配置环境

Objective-C:标签栏项目的标题在登录页面后不会改变,但在从xCode重新启动时有效吗?

目标 ... 覆盖在 `Pods/Pods.xcconfig 中定义的 `OTHER_LDFLAGS` 构建设置