【问题标题】:Adding dependent project in XCode 4在 XCode 4 中添加依赖项目
【发布时间】:2025-12-14 14:10:01
【问题描述】:

我正在尝试在 XCode 4 中添加一个依赖项目。该项目的链接是这样的:https://github.com/jverkoey/ObjQREncoder

作者描述了一种添加方法,但它适用于 XCode 3。我正在尝试将它添加到 XCode 4。 我将项目拖到我的框架中,然后转到 Target Dependencies 中的 Targets 和 QREncoder。然后我在“Link Binary with Libraries”中添加了 libQREncoder.a。然后我为标题搜索路径“src/Classes”添加了这个。

当我包含“QREncoder/QREncoder.h”时,它给了我这个错误:file://somePath/FINALQRAppDelegate.m: error: Lexical or Preprocessor Issue: 'QREncoder/QREncoder.h' file not found

我的项目是这样设置的:

FINALQR 是我正在尝试添加依赖项的项目,并且依赖项项目位于 src 中。

谢谢。

问题是它无法识别 QREncoder 类。

【问题讨论】:

  • 为什么投反对票?这是一个完全有效的问题。投票反对反对票。

标签: objective-c cocoa-touch ios xcode4 dependencies


【解决方案1】:

只有 Xcode 4 工作区受益于跨多个项目的共享构建文件夹。从主菜单中,选择 File > New > New Workspace... 保存工作区,然后将您的子项目拖到它的 Project navigator 面板中。

注意放置它们的位置(确保您没有将一个项目作为工作区中另一个项目的子项目),以便它们都是您工作区中的*项目。这将导致他们共享构建文件夹,并且自动依赖检测应该可以工作。

当然,除非您在目标的构建设置中设置了自定义搜索路径。 :-)

【讨论】:

    【解决方案2】:

    我认为您的问题是您需要将以下内容设置为您的搜索路径:

    "$(SRCROOT)/src/Classes"
    

    不是

    "src/Classes"
    

    如果您已经有一个 Xcode4 项目,您应该能够将 QREncoder 作为子项目拖入其中,就像我认为您已经完成的那样,然后添加 .a 文件,就像您所做的那样。

    【讨论】: