- 系统版本Ubuntu16.04
- Qt5.9
- protobuf 2.6.1
这些软件装完之后,运行公司的工程,出现以下错误his program was compiled against version 2.6.1 of the Protocol Buffer runtime library, which is not compatible with the installed version (3.5.1). Contact the program author for an update. If you compiled the program yourself, make sure that your headers
参考这个链接*给出解决方案。
解决方案:
先将/Qt5.9.0/5.9/gcc_64/plugins/platformthemes中的libqgtk3.so文件移除(记得先备份)cp home/nio/Qt5.9.0/5.9/gcc_64/plugins/platformthemes/libqgtk3.so /home/Desktop/ rm home/nio/Qt5.9.0/5.9/gcc_64/plugins/platformthemes/libqgtk3.so
只是这样还不够,工程使用Cmake依赖于Qt5,工程会自动找到这个文件,其实这个文件只是控制Qt的GUI,问题不大。为了防止配置问题,需要找到Qt5Gui_QGtk3ThemePlugin.cmake文件,并且把里面的代码注释掉。以下是可能存在的路径。home/nio/Qt5.9.0/5.9/gcc_64/lib/cmake/Qt5Gui/Qt5Gui_QGtk3ThemePlugin.cmake
就可以顺利解决这个问题了,Enjoy!