我正在运行Xcode 4.4.1,这是一个相当愚蠢的问题。我可以启动新的简单C ++命令行项目并编译好。但是,当我从左窗格中删除源文件并拖放新的.cpp / .h文件并点击编译时,“旧”的旧代码仍然编译并显示在提示中。我正在从VS 2010转移,我知道这对我来说必须是一个愚蠢的联系疏忽。我如何简单地从其他地方添加源文件并通过添加到项目来编译?
我知道这是一个noob问题,但我环顾四周,失去了一点耐心。
谢谢大家。
答案 0 :(得分:2)
Xcode表现得很奇怪,左边显示的文件可能无法反映真实的文件层次结构,如果存在某些内容,则并不意味着它会被编译。
您必须使用右侧面板中的检查器手动检查每个文件,以查看它是否已添加到构建中,或者更方便地检查“Project.xcodeproject / project.pbxproj”或类似的内容。它是一个XML文件,用于维护有关您添加到项目中的所有文件,文件夹和项目的信息,包括如何处理此类文件。
生成的文件是人类可读的,Xcode轻轻地添加了很多评论:)我认为你必须检查第一部分,它声明所有资源,有一个属性说明你想对每个文件做什么
我希望这会对你有所帮助:)。
编辑:
您可以通过选择并显示“文件检查器”(alt + cmd + 1
)来检查当前目标的文件是否包含在内。信息位于“目标成员”部分,确保至少检查一个项目。
关于project.pbxproj,相关部分是PBXBuildFile,它必须是第一个。
每个条目都是对构建步骤的引用,并指示使用isa
字段(PBXBuildFile)和哪些对象(fileRef
)必须完成的操作。
fileRef
与您在下面的组层次结构中的文件以及PBXFileReference部分中的文件相匹配。它是PBXFileReference部分,它指示它是什么类型的文件(使用lastKnownFileType
属性)。