错误:未定义“ PROTOBUF_MIN_PROTOC_VERSION”

时间:2018-09-30 20:29:27

标签: protocol-buffers gem5

我正在尝试构建用于仿真的Gem5,但我是新手。我遵循了以下网站http://www.gem5.org/Dependencies中提到的步骤,并且已经安装了上述所有必需的文件。当我运行以下命令进行构建时 $ scons build / X86 / gem5.opt --force-lto 它给了我以下错误

build / X86 / proto / packet.pb.h:16:15:错误:未定义“ PROTOBUF_MIN_PROTOC_VERSION”,结果为0 [-Werror = undef]

Screenshot of the error. 我尝试使用Google搜索错误,但找不到任何解决方案 有人可以指导我如何解决这个问题

2 个答案:

答案 0 :(得分:0)

我遇到了同样的问题。之后尝试几种解决问题的方法。我发现此问题可能是由protobuf引起的。我重新安装了protobuf,它无法正常工作。

但是我卸载了protobuf。 gem5可以通过构建。

但是在构建它时,会显示警告消息。

警告:找不到协议缓冲区编译器(协议)。          请安装protobuf-compiler以获得跟踪支持。

答案 1 :(得分:0)

更新:在protobuf v3.7.1中已修复


我也碰到了这个。参见here

您可以:

  • 手动使用正确的宏和版本更新生成的protobuf标头
  • 或者如果您确定版本兼容,则可以删除protobuf源文件的-Werror=undef标志。