在一个 Objective-C 项目中,我使用了一个静态库,这个静态库的编译依赖于一些预处理器宏的设置。
当我根据库在项目中设置这些宏时,库看不到它们。但是当我在图书馆项目中设置它们时,它确实有效。
由于我想将这个库重用于其他项目,我需要根据库分别为每个项目设置预处理器宏。有解决办法吗?
最佳答案
预处理器宏仅在编译时有任何意义,因此您构建的任何库在您构建库时都将特定于这些预处理器宏的值。您将需要许多不同版本的库,使用预处理器宏的不同可能值构建,或者您可以切换到使用不同的方法来控制将在运行时工作的库代码的行为,例如通过库 API 设置一些适当的参数。
关于objective-c - 静态库中的预处理器宏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7791642/