我正在尝试解决着名的protobuf版本错误(见下文),在Linux下编译paraview和Qt(Ubuntu 17.10)。
This program requires version 3.0.0 of the Protocol Buffer runtime
library, but the installed version is 2.3.0. Please update your
library. If you compiled the program yourself, make sure that your
headers are from the same version of Protocol Buffers as your link-time
library.
为了开发一个与网页上的二进制文件兼容的插件,我想用Qt-5.8编译paraview。因此,我使用Qt下载脚本下载了源代码。我成功地编译了Qt,但因为我得到了上述错误,在编译和运行paraview时,我认为Qt没有使用protobuf的系统版本,它是3.0,而是内置版本。
据我所知,构建脚本会评估是否使用系统protobuf版本(例如在qtwebengine / src / core / config / linux.pri:65中)。
有没有办法检查哪个protobuf版本用于编译Qt? 我能以某种方式强制执行吗?我假设如果安装了libprotobuf-dev软件包,它会被检测到,但我不知道如何检查这个方法。
我在这个网站上发现了类似的问题(例如link),但其中的答案还没有解决我的问题。
答案 0 :(得分:1)
这已在ParaView issue tracker中记录。
到目前为止有两种解决方案: