我想在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.h
,TYPE_UINT32
,TYPE_SINT32
)的某些缺少字段的TYPE_SINT64
文件中收到了其他错误。如果我对TYPE_BOOL
行发表评论,则所有错误都会消失,但它仍然只是使用TYPE_BOOL
的行。
是否有其他人遇到此问题并为此提供解决方案?
我使用protobuf 2.5.0 for c ++,和XCode 4.6.2。
答案 0 :(得分:0)
最后我找到了解决这个问题的方法。我没有在搜索标题路径中添加核心路径。我的路径是/Users/myuser/Downloads/protobuf2.5.0/src,但这也包括了目标文件(.o文件)。我已将路径更改为:/Users/myuser/Downloads/protobuf2.5.0/src/google/protobuf。