2012-04-02 60 views
0

编辑:在调用静态库外部宏观

我的Xcode项目(称为PROJECT1)包含另一个Xcode项目作为依赖(在构建阶段)(称为LIB1)

我的问题是,LIB1需求一个宏和一些由PROJECT1在编译时定义的定义(取决于在PROJECT1中选择了什么目标)

我认为运行脚本操作可以帮助我。但是我发现在构建依赖关系之后调用脚本。所以我的包含文件被复制到我的lib源代码,之后,编译库...

此外我发现构建设置环境变量不传输到LIB1,这将帮助我很多。

你有什么想法吗?

感谢您的帮助。

蒂埃里

+1

买它的眼镜?宏不是“调用”的,它们是“扩展的”。编译代码时(或更准确地说,预处理)它们必须存在,并且在编译后更改宏将不起作用。 – 2012-04-02 18:21:26

+0

我编辑了我的问题。 – thierryb 2012-04-03 17:35:22

回答

0

你需要包括包含在你需要它的代码所需要的东西的头文件。宏不像你在另一个地方跳转到代码的功能。宏在您使用它的地方创建代码。

0

另一种选择是将所有的依赖变成变量/方法,而不是宏文字或宏函数扩展。通常这将通过为每个不同的操作环境提供的单独的服务模块来实现。