我正在尝试在 Objective-C Xcode 项目中使用 C 库。
库目录结构如下:
-- include/
|-- config.h
|-- lib/
| |-- file1.h
| |-- file2.h
| |-- file3.h
库的文档说包含 file1.h,file1.h 包含 file2.h 和 file3.h。
对于 file2.h 和 file3.h 的包含,我收到“找不到文件”错误。 它们以下列方式包含在 file1.h 中:
#include <lib/file1.h>
#include <lib/file2.h>
我读了here这些尖括号指示预处理器沿着 INCLUDE 环境变量指定的路径搜索包含文件,而不是在与包含 #include 的文件相同的目录中搜索。
所以我在 Xcode 中添加了 INCLUDE 环境变量,方法是转到 Product->Edit Scheme.. 并将其设置为 /the-whole-path-to/include/
但是,我仍然得到找不到文件错误。
如果我像这样更改 file1.h 以包含文件,则文件会成功包含:
#include "file2.h"
但我不想对库中的每个文件都这样做。
我该如何解决这个问题?
最佳答案
在 XCode 5.0.2 版本中,完成此操作的最佳方法可能是将其添加到目标的“搜索路径” Pane 中。找到它(对我来说)难以置信 很不直观。对于像我一样困惑的人,这是我的方法:
在左栏中,单击“项目导航器”图标(看起来像一个文件夹)。然后,单击项目条目。这应该在主 Pane 中显示一堆设置。在此 Pane 的顶部,单击“Build Settings”。这显示了一堆条目......包括一个名为 Search Paths ......但你不能在此处添加搜索路径!这让我咬牙切齿了很久同时,直到我发现此 Pane 顶部的项目名称是一个下拉菜单;从此下拉菜单中选择目标,您现在应该可以双击“ header 搜索路径”并执行所需的编辑。
哦,疯狂 GUI 的乐趣。
关于c - 如何在xcode项目中设置包含路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14134064/