我在主目录中添加了一个include目录。我可以从构建目录运行“ ls -l〜/ include”。
我已经在“ Header Seach Path”和“ User Header Search Path”中添加了该目录。在这两个地方,我都尝试了非递归和递归。
但是xcode 4.5.1在任何情况下都找不到第一个陈述的头文件。

它在源代码call.m中表示为:

 #include <directory/file.h>


我收到“找不到词汇或预处理程序问题'directory / file.h'文件”。

但是,从cli运行xcodebuild时,构建源代码没有任何问题。

我尝试了很多在互联网上找到的建议


在我的驱动器中的/ usr /中放置一个include
为项目添加索引,添加没有副本且未标记“添加到目标”的文件。
重新启动xcode。
指定所有特定路径。


但是仍然没有。

问题是什么。 Xcode中的错误?

最佳答案

我只是遇到了类似的问题,这是因为我为Header Search Path定义的路径中有空格。例如,我正在定义以下内容作为搜索路径:

$(SRCROOT)/Frameworks/Headers

扩展到以下内容:

/Users/skoota/Documents/Xcode Projects/My App/Frameworks/Headers

如您所见,路径中有空格(当您使用$(SRCROOT)变量时,这些空格并不立即可见),并且编译器并不特别喜欢这些空格。我通过将搜索路径更改为此来解决了这个问题:

"$(SRCROOT)"/Frameworks/Headers

(请注意,$(SRCROOT)周围的引号会转义空格)。现在扩展到:

"/Users/skoota/Documents/Xcode Projects/My App"/Frameworks/Headers

尽管嵌入的"标记看起来有些奇怪,但效果很好。这花了我一段时间才弄清楚,希望对您有所帮助!

10-04 21:35
查看更多