0

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

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_BOOLExpected }”行。由于这个错误,我在wire_format_lite_inl.h这个枚举(TYPE_UINT32, TYPE_SINT32, TYPE_SINT64)的一些缺失字段的文件中得到了一些其他错误。如果我评论该TYPE_BOOL行所有错误都会消失,它只保留TYPE_BOOL使用它的行。

有没有其他人遇到过这个问题并有解决方案?

我对 c++ 使用 protobuf 2.5.0 和 XCode 4.6.2 。

4

1 回答 1

0

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

于 2013-05-24T16:17:30.580 回答