在XCode中链接libprotobuf-lite库时出现奇怪错误

时间:2013-05-24 14:22:16

标签: ios xcode protocol-buffers

我想在IOS应用程序中使用protobuf librabry,所以我将libprotobuf-lite.a添加到我的项目中,并将Header Search Paths设置为protobuf src文件夹,但我收到了一个奇怪的错误。 wire_format_lite.h对象中的FieldType枚举中的WireFormatLite文件。这是枚举:

enum FieldType {

    TYPE_DOUBLE         = 1,

    TYPE_FLOAT          = 2,

    TYPE_INT64          = 3,

    TYPE_UINT64         = 4,

...........................................

    TYPE_BOOL           = 8,

    TYPE_STRING         = 9,

..........................................

    TYPE_SINT32         = 17,

    TYPE_SINT64         = 18,

    MAX_FIELD_TYPE      = 18,

  };

错误出现在TYPE_BOOL行“Expected }”上。由于此错误,我在此枚举(wire_format_lite_inl.hTYPE_UINT32TYPE_SINT32)的某些缺少字段的TYPE_SINT64文件中收到了其他错误。如果我对TYPE_BOOL行发表评论,则所有错误都会消失,但它仍然只是使用TYPE_BOOL的行。

是否有其他人遇到此问题并为此提供解决方案?

我使用protobuf 2.5.0 for c ++,和XCode 4.6.2。

1 个答案:

答案 0 :(得分:0)

最后我找到了解决这个问题的方法。我没有在搜索标题路径中添加核心路径。我的路径是/Users/myuser/Downloads/protobuf2.5.0/src,但这也包括了目标文件(.o文件)。我已将路径更改为:/Users/myuser/Downloads/protobuf2.5.0/src/google/protobuf。