2012-08-03 62 views
2

新手在这里尝试将CHDataStructures库添加到我正在处理的计算器项目中。我照在Linking a static library to an iOS project in XCode 4在接受的答案建议,并结束了与此:将外部库添加到XCode中的项目4.3

XCode with library added

不幸的是,我得到一个'CHDataStructures.h' file not found错误,当我尝试添加的头班在我的项目(Calculator.m,例如)。

有关如何让CHDataStructures库像死星一样全面运行的想法?

编辑

好了,这里的尝试都$(SRCROOT)和绝对路径。有什么想法吗?

with `$(SRCROOT)

with absolute path

+0

您链接的答案中的第5点对此非常重要。你也听过吗? – 2012-08-03 22:41:47

+0

啊,不 - 我希望这不是关键,因为我不知道该怎么做。你如何添加标题搜索路径? – 2012-08-03 22:43:45

+0

使用图片最简单,请参阅答案。 – 2012-08-03 22:59:22

回答

11

默认情况下,Xcode的搜索递归项目自身的目录头。如果您使用的是静态库,则需要使用可能驻留在其他位置的lib的头文件。有在允许您指定其他路径编译期间搜索的Xcode项目2个设置:

用户头搜索路径

#import "SomeHeader.h" 

头搜索路径

#import <SomeHeader.h> 

根据您打算使用哪种样式,选择适当的设置,并提供您希望使用的头文件的路径:

enter image description here

这些路径可以是递归的,相对于项目(使用$(SRCROOT)/),或绝对的。如果您正确设置了Xcode,您也可以使用衍生数据目录。

+0

非常感谢!那样做了。现在,我可以渴望足够了解编码,以了解我刚刚修复的东西。 – 2012-08-03 23:24:14

+0

Drat。我以为我拥有它,但我不太明白使用什么路径。我尝试了'$(SRCROOT)/ Users/joel/Developer/CalculatorFourthTry' [CalculatorFourthTry是文件的名称,这是它的路径]和'“($ SRCROOT)/ Users/joel/Developer/CalculatorFourthTry”',变成'“(SRCROOT)/ Users/joel/Developer/CalculatorFourthTry”/ **',但我仍然得到错误。我正在格式化错误,我认为? – 2012-08-03 23:31:02

+0

@JoelDerfner'$(SRCROOT)'只是“.xcodeproj文件的绝对路径”的环境变量。如果你使用它,你会指定相对于.xcodeproj文件的头文件的路径,这不是你在那里做的。您似乎正在使用绝对路径,但将环境变量添加到它。 – 2012-08-03 23:33:46