从构建配置创建Makefile

时间:2017-06-08 06:25:33

标签: c++ c xcode makefile

Xcode是否支持将构建配置(编译器和链接器选项和标志)导出到Makefile?或者是否有第三方实施可用于此类任务?

我们使用Xcode进行大部分(本机代码)开发,但我们还需要针对Windows / Linux库进行编译。通常我们在Xcode中有有效的构建配置,我们在提交代码修改之前手动编辑Makefile。此过程容易出错,并在开发环境和构建系统之间产生不希望的差异。

自动将构建配置导出到Makefile将大大简化我们的流程。

1 个答案:

答案 0 :(得分:1)

我认为你的答案是xcodebuild -showBuildSettings

$ xcodebuild -showBuildSettings
Build settings for action build and target YourApp:
ACTION = build
AD_HOC_CODE_SIGNING_ALLOWED = NO
ALTERNATE_GROUP = staff
ALTERNATE_MODE = u+w,go-w,a+rX
ALTERNATE_OWNER = Stanislaw
...

您可以将其与-scheme-configuration-target等常规选项结合使用。

当注入一些自定义标志时,人们也会尝试使用所谓的.xcconfig文件。这条路径可以让你到达某个地方,但不是一种非常方便的跨平台开发方式,因为它们只适用于Mac。请参阅此示例:Using xcconfig files for your XCode Project

获取信息的另一种间接方式是从Xcode转储所有编译命令,请参阅以下答案:How can I get all the compile commands from Xcode?

据我所知,Xcode在处理所有标志时并不是很友好。

另一个需要考虑的选择是从Makefile切换到CMake。 CMake并不完美,但到目前为止它似乎是最好的工具:它可以生成Xcode项目,它可以帮助您创建针对不同平台的库。