我目前在tensorflow中使用RNN收到此错误:
[libprotobuf致命谷歌/ protobuf / stubs / common.cc:61]这个程序 需要版本3.3.0的协议缓冲区运行时库,但是 安装版本是2.6.1。请更新你的图书馆。如果你 自己编译程序,确保你的标题来自 与链接时库相同的Protocol Buffers版本。 (版本验证失败了 “巴泽尔输出/ local_linux-OPT / genfiles / tensorflow /的contrib / tensor_forest /原/ fertile_stats.pb.cc”。) 抛出一个实例后终止调用 使用 'google :: protobuf的:: FatalException'
what():该程序需要3.3.0版本的协议缓冲区 运行时库,但安装的版本是2.6.1。请更新 你的图书馆。如果你自己编译了程序,请确保 你的标题来自与你的相同版本的Protocol Buffers 链接时库。 (版本验证失败了 “巴泽勒输出/ local_linux-OPT / genfiles / tensorflow /了contrib / tensor_forest /原/ fertile_stats.pb.cc”。)
但是当我检查版本时:
$ pip show protobuf
Name: protobuf
Version: 3.4.0
Summary: Protocol Buffers
Home-page: https://developers.google.com/protocol-buffers/
Author: protobuf@googlegroups.com
Author-email: protobuf@googlegroups.com
License: 3-Clause BSD License
Location: /usr/local/lib/python2.7/dist-packages
Requires: six, setuptools
答案 0 :(得分:0)
您可能安装了两个不同版本的protobuf。 检查
protoc --version
如果与3.4.0不同。您可能需要将其卸载。
答案 1 :(得分:0)
猜猜你是在使用不同的lib链接一个c ++程序。如果使用不同版本的protobuf构建这些库,则会导致此问题。使用相同版本的protobuf重建所有库(包括tf)。