将预处理程序从XCode5项目传递到其包含的子项目

问题描述 投票:9回答:1

我有一个Xcode5项目(A),它依赖于另一个XCode5项目(B)。项目B作为子项目包含在项目A中。项目B需要通过项目A的预处理程序定义传递,但这似乎是不可能的任务。根据设计,预处理器定义不会从一个父XCode项目传递到其子项目。我尝试在XCode Scheme中设置环境变量,然后在项目B中选择该变量,但这也不起作用。我不知道该怎么做,尽管我已经过了一整个上午了...

重要的旁注:我不想在项目B中更改任何内容,因为它是一个将由许多父项目使用的项目,并且更改(即,预处理程序定义)仅应在父项目中进行,但从不在项目B中。

编辑:一个非常简单的可能性是在项目A中具有一些带有一些预处理程序定义的“ config.h”头文件,而项目B将包括此文件。但是,如果没有专门将该文件的目录添加到Project B的头文件头目录中,我将不知道如何告诉XCode查找该文件(再次:我从不希望对Project B进行更改)。

xcode xcode5 preprocessor
1个回答
0
投票

您的请求最好与xcconfig一起使用。看到这篇文章:https://medium.com/@derrickho_28266/super-preprocessor-directives-with-xcode-8-77bf4d4e5a0c

或者,您可以从命令行将定义从项目一直传递到子项目,如下所示:xcodebuild -project TopLevelProject.xcodeproj GCC_PREPROCESSOR_DEFINITIONS='$GCC_PREPROCESSOR_DEFINITIONS FOOBAR=1'

© www.soinside.com 2019 - 2024. All rights reserved.