Xcode 4.2:如何从子项目导入.h文件
我是Xcode子项目的新手。 在我的iPhone应用程序项目MyProject
,我正在尝试将一些常用代码重构为名为MyLibrary
的静态库项目。 在创buildMyLibrary
并移动代码后, MyProject
不再编译。 错误是MyProject
无法在MyLibrary
看到.h文件。
错误MyLibraryConfig.h: No such file or directory
在行:
#import "MyLibraryConfig.h"
- 如何在
MyProject
导入MyLibrary
.h文件? - 这里最好的做法是什么? 假设我有多个这样的库,将这些添加到父项目的头部searchpath是非常繁琐的。
也许你的头文件也在一个子目录中。
想象一下下面的目录设置:
- Desktop - MyProject - MyProject.xcodeproj - main.m - MyLibrary - MyLibrary.xcodeproj - MyHeaderFile.h <-- wanted header file
如果main.m有这些内容:
#include "MyHeaderFile.h" int main() { return 0; }
编译器(gcc)会认为MyHeaderFile.h和main.m是在同一个目录下的,包含它在内。 要告诉编译器你的意思是在一个子文件夹中的头文件,你可以做两件事情。
- 你可以添加一个目录到gcc编译器,上面写着:“嘿,在这个文件夹中查找”。 你可以通过使用
-iquote myFolder
标志来做到这一点。 - 您可以在include语句中包含目录:
#include "MyLibrary/MyHeaderFile.h"
当然可能还有另外一个问题,但这个问题最为直接。
在构build设置 – >标题searchpath – >添加下面的条目
$(SRCROOT)并将其标记为recursion。