gpt4 book ai didi

xcode - 如何在 CMake 控制的项目中保持 XCode 4 pbxproj 文件同步?

转载 作者:行者123 更新时间:2023-12-02 01:17:23 25 4
gpt4 key购买 nike

我们有一个使用 CMake (2.8.7) 构建并使用 Git 进行版本控制的 C++ 项目。我们的两个开发人员(DevA 和 DevB)使用 XCode 4.2。他们可以使用 CMake 的 -G Xcode 功能生成 XCode 项目,没问题,并通过 IDE 推送/拉取/提交更改。当项目重组时,问题就开始了。如果 DevA 添加一些文件并提交/推送,DevB 可以提取更改(它们在文件系统中可见),但它们不会反射(reflect)在 XCode 项目设置中。我们认为也许将 *.pbxproj 文件置于版本控制之下可以解决这个问题;但是,该文件充满了绝对路径。到目前为止,我们能找到的唯一“解决方案”是每次重新组织源代码树时都通过运行 CMake -G Xcode 来重新创建 XCode 项目,这非常繁琐。有更简单的方法吗?谢谢。

最佳答案

CMake 将 ZERO_CHECK 目标注册为 Xcode 中每个“真实”目标的依赖项,它的唯一职责是在“CMakeScripts/ReRunCMake.make”中重新运行 CMake 并在 CMakeLists.txt 文件之一发生更改时更新 Xcode 工件.如果您没有看到 Xcode 中反射(reflect)的更改,那是因为 Xcode 不会查看其 .xcodeproj 目录中的更改。实用的解决方案是在 Xcode 中关闭项目并重新打开它。此时您可以重新运行“cmake -G Xcode ..”。

这同样适用于 Visual Studio 10,只是它会询问您是否要重新加载每个目标。它适用于较小的更改,但不适用于添加/删除文件。

我可以接受它,因为在项目生命中有一个点,当源文件集不再真正改变时。至少那是我的经验。

关于xcode - 如何在 CMake 控制的项目中保持 XCode 4 pbxproj 文件同步?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9498271/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com