协议缓冲区初始化期间崩溃

时间:2012-01-31 11:51:24

标签: c++ protocol-buffers

使用协议缓冲区我的应用程序观察到以下崩溃

0x00000000 in ?? () 在google :: protobuf :: DescriptorPool :: InternalAddGeneratedFile中的0x08055f43( encoded_file_descriptor = 0xf64,size = 3940)at once.h:115

0x08072b7a在google :: protobuf :: protobuf_AddDesc_google_2fprotobuf_2fdescrip tor_2eproto()at google / protobuf / descriptor.pb.cc:557

2 个答案:

答案 0 :(得分:1)

遇到与你描述的完全相同的崩溃。原因是在{2008}下,Releaselibprotobuf.libDebug与{{1}}运行时混合。http://code.google.com/p/protobuf/issues/detail?id=184进一步讨论。

答案 1 :(得分:0)

昨天我遇到了同样的问题。

为什么会这样: 我有两个.proto文件在不同的库(不同的包)中具有相同的相对路径/名称: lib1 / proto / config.proto,lib2 / proto / config.proto

解决方案很明显 - 将.proto文件放在不同的目录中和/或具有唯一的.proto文件名。

PS:我知道这是一个有四年历史的问题,但我希望对别人有所帮助。