如何将Google协议缓冲区集成到xCode项目中?

时间:2012-09-03 14:11:45

标签: objective-c xcode serialization marshalling protocol-buffers

我目前正在尝试将此第三方Objective-C版Google协议缓冲区集成到我的xCode项目中,以便我可以编译它: Objective-C implementation of Google Protocol Buffer

现在我已成功制作并安装了库以及与安装有关的所有内容。我的问题在于理解一些设置说明。更具体地说,在上面提供的链接下的项目集成下找到的分步列表。

  

在项目中添加对/Classes/ProtocolBuffers.h的引用,并将以下行添加到pch文件中:#import" ProtocolBuffers.h"

现在有了这个,我想简单地将头文件拖到项目中是什么意思?不幸的是,当我这样做时,我得到的是一个链接器错误,表示找不到该文件。

  

获取构建目标的信息

我对这应该是什么意思总体上感到困惑?

  

将ProtocolBuffers添加为构建目标的直接依赖关系。

不幸的是,我对xCode中的这种工作没有多少经验。我试图在谷歌上搜索,人们建议只需将整个项目拖到你的主项目中,然后将其作为目标的参考添加,但我真的无法让它工作。有谁可以给​​我一些关于如何做到这一点的好文章?

总而言之,我只是试图弄清楚所有这一切,如果有人能澄清其含义或指向我的文章或其他论坛帖子解释如何做到这一点,那将会很棒:)

谢谢大家的帮助:)

[编辑]

似乎还缺少名为libProtocolBuffers.a的设置库?

1 个答案:

答案 0 :(得分:3)

我希望您已成功安装库并为测试.proto文件创建.pb.h和.pb.m文件。

我正在使用metasyntactic项目的an ARC enabled iOS 5 version。但我认为步骤或多或少都是一样的。

  • 将这些.pb.h和pb.m文件添加到项目中(简单地将文件添加到项目中)。 在构建时,您会在.pb.h文件中看到一条错误消息。所以从安装路径添加该文件 - > src - >运行时 - >类。并将 #import“ProtocolBuffers.h”添加到.pch文件中。

  • 再次构建会给出错误,说某些.h文件无法找到。 点击项目目标 - >构建设置选项卡 - >搜索路径 - >标题搜索路径:添加“src”文件夹的路径并单击递归复选框

现在添加目标依赖

在Project Navigator窗格中,右键单击项目 - >将文件添加到项目 - >导航到安装路径 - > src - > runtime:添加ProtocolBuffers.xcodeproj文件。您应该能够在自己的项目中看到整个ProtocolBuffer项目。

现在转到项目目标 - > Build Phases选项卡 - >目标依赖项:单击+,您将能够看到ProtocolBuffer项目目标。单击ProtocolBuffers以添加依赖项。

现在在同一个标​​签中点击“Link Binary with Libraries”,点击+。添加libProtocolBuffers.a文件并生成。

libProtocolBuffers.a实际上并没有丢失,而是它刚刚添加的ProtocolBuffers项目的输出。