5

我正在尝试将此框架添加到项目中。我已按照以下说明进行操作:

  1. 将 SocketRocket.xcodeproj 添加为应用程序的子项目或工作区。
  2. 将 SocketRocket.framework 添加到链接库
  3. 如果您没有框架的“复制文件”步骤,请创建一个
  4. 将 SocketRocket.framework 添加到“复制文件”步骤。

我确保我只打开了一个 xcode 实例,然后将 SocketRocket.xcodeproj 文件拖到我的项目中。我将 .framework 文件添加到链接库,创建了复制文件构建阶段,然后将 .framework 添加到复制文件构建阶段。

这是我尝试构建时遇到的错误:

clang:错误:没有这样的文件或目录:'/Users/adamhickey/Library/Developer/Xcode/DerivedData/websockettest-fcuhfltporfkitgubwcjukxogzas/Build/Products/Debug-iphonesimulator/SocketRocket/SocketRocket'

完全正确:该目录不存在。

在构建阶段,SocketRocket.framework 在 Link Binary With Libraries 下是红色的。它在 SocketRocket 子项目的 products 文件夹中也是红色的。

我已经用谷歌搜索这个错误几个小时了,我尝试过的大部分事情都指向我改变 Xcode->preferences-locations 中的构建位置。我试过了:

  1. 将其设置为相对,选择我自己的,然后进入高级并选择遗产。
  2. 为设备构建
  3. 构建->归档
  4. 为发布而构建

如果我在一个单独的 xcode 实例中打开 SocketRocket.xcodeproj 并尝试构建它,四个产品中有 3 个是红色的。产品有:libSocketRocket.a、SRWebSocketTests.octest、TestChat.app、SocketRocket.framework。第一个是白色的,而后三个是红色的。

我假设如果我可以将 .framework 文件构建在一个单独的项目中,这将解决我的整体问题。但是,我所做的任何事情似乎都没有任何效果。

请请请帮忙!我正在使用 xcode 4.6。

4

2 回答 2

1

我在为 libSocketRocket.a 配置时遇到了类似的问题。

我的工作区包含两个兄弟项目:SocketRocket 和 myProject。

我将 SocketRocket 添加为 git 子模块。

到目前为止,克里斯托夫的回答对我有用:

在需要时配置 XCode 4 工作区以构建依赖项的正确方法是什么?

将 libSocketRocket.a 位置从“相对”更改为“相对”以“构建产品”。

搜索包含已构建静态库的路径,例如:

/Users/myName/xcode-build/myProject-eegkidwlennrekbsinvncwxqybol/Build/Products/Debug-iphoneos/libSocketRocket.a

然后修复路径。

于 2013-08-07T00:08:59.820 回答
0

在您的主项目中,在构建阶段,创建对该 SocketRocket 项目的依赖项。您应该会看到 .a 出现在那里以及链接阶段。如果您仍然无法让它工作,请创建一个小型演示项目,尝试将其链接并将其压缩并放在 DropBox 上,然后使用位置编辑问题。

于 2013-05-05T12:35:28.177 回答