未找到Xcode链接的项目头文件

时间:2010-01-21 01:24:35

标签: ios objective-c iphone xcode

以下是我的情况:
ProjectA - Xcode静态库项目。
ProjectA包含带有文件ExternLib.h的逻辑代码组ExternLib。 ExternLib.h本身位于文件夹Classes / lib / ExternLib(相对于ProjectA文件夹)中。在ProjectA中,我将ExternLib.h简单地用作:#import“ExternLib.h”。这很好用。

接下来我有ProjectB。这包括ProjectA作为链接的Xcode项目。目标已正确添加等。但是,当我在ProjectB中包含一个文件而后面包含ExternLib.h时,在构建ProjectB时,我收到一条错误,指出无法找到文件ExternLib.h。

我尝试将ExternLib.h的路径添加到标题搜索路径(所有类型:相对,绝对,递归等),但无济于事。我已经检查过静态库目标是否具有复制头部步骤,并且文件ExternLib.h包含在其中。

任何人都可以阐明如何解决这个问题?

2 个答案:

答案 0 :(得分:1)

  1. 将Run Script Build Phase添加到执行

    的ExternLib的目标
    mkdir -p "${BUILT_PRODUCTS_DIR}ExternLibHeaders"
    
  2. 添加复制文件构建阶段,将ExternLib头文件复制到${BUILT_PRODUCTS_DIR}ExternLibHeaders,并将所有ExternLib的标头添加到该阶段。

  3. 在ProjectB的应用目标中,将${BUILT_PRODUCTS_DIR}/ExternLibHeaders/添加到所有配置的标题搜索路径。

  4. 在Xcode中>偏好>构建,将构建产品目录设置为某个公共位置。

  5. 第四步至关重要;它确保BUILT_PRODUCTS_DIR对于两个项目都是相同的。

答案 1 :(得分:0)

很难说出现了什么可能出错。

我将从头开始编写有关构建和使用静态库的教程,并查看是否有任何步骤使您想到任何想法。