如何修复xcode始终编译所有内容?

时间:2009-11-05 10:50:13

标签: c++ xcode macos openframeworks

我已经开始使用XCode了,它似乎很有效,大部分都是。

令人讨厌的是它每次都会编译所有源文件,甚至是那些没有改变的源文件。

我正在接触openframeworks并且每次都浪费时间编译openframeworks源文件,尽管它们没有改变。

以下是我的IDE和机器详细信息:

的XCode 版本3.1.2 组件版本 Xcode IDE:1149.0 Xcode核心:1148.0 ToolSupport:1102.0

Mac OS X. 版本10.5.6

有没有人遇到同样的问题?任何解决方法?

3 个答案:

答案 0 :(得分:9)

您保存了一些文件,然后操作系统已向后同步您的系统时间。现在检测到这些文件将来会被修改。 您应该在项目主文件夹中执行以下bash命令:

find . -exec touch {} \;

答案 1 :(得分:3)

许多(大多数?)构建系统使用文件的最后修改日期和时间来确定是否需要执行重新编译。我首先验证文件日期是否按预期运行;例如,如果文件位于网络驱动器上,则可能存在不同的时间设置或时钟差异,这使得看起来文件在将来被修改,因此构建系统始终编译它们。就此而言,如果它们位于网络驱动器上,则所使用的协议可能不包括修改日期,系统只是将其默认为“now”,因此它看起来似乎只是修改了每个文件。

答案 2 :(得分:0)

我的经验是,它会重新编译已更改的内容以及取决于更改内容的内容。因此,如果您正在编辑一个将#import添加到其他文件中的.h文件,那么自然一切都需要重新编译。但是,如果您只编辑.m文件,则只应重新编译.m文件。我不知道任何会改变这种行为的Xcode设置。