View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0002673||OpenFOAM||[All Projects] Bug||public||2017-08-22 13:50||2017-08-23 19:26|
|Priority||normal||Severity||minor||Reproducibility||have not tried|
|Status||closed||Resolution||no change required|
|Fixed in Version|
|Summary||0002673: paraFoam libprotobuf FATAL|
|Description||I compiled OF from source using gcc 5.4, cmake 3.9.1, qt 5.6.2 and openmpi 2.1.1. I checked all the logs and it compiled without any error. Afterwards when I tried to run paraview (itself or paraFoam) I get the following error:|
libprotobuf FATAL /home/taher/OpenFOAM/ThirdParty-gcc/ParaView-5.4.0/ThirdParty/protobuf/vtkprotobuf/src/google/protobuf/stubs/common.cc:62] This program requires version 2.6.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. (Version verification failed in "/build/mir-ui6vjS/mir-0.26.3+16.04.20170605/obj-x86_64-linux-gnu/src/protobuf/mir_protobuf.pb.cc".)
Aborted (core dumped)
I tried changing LD_LIBRARY_PATH but didn't have any success. Also, I didn't have this problem on other OSs (I tested open suse and fedora), only on ubuntu.
I don't have this problem when I install OF from PPA.
|Tags||No tags attached.|
How are you loading each OpenFOAM environment? Namely, when you change between OpenFOAM versions, do you start a new terminal/console or do you use 'wmUnset' before loading/activating another version?
My concern is that the error message seems to imply that an older version of the "Protocol Buffer" library might have been used when building ParaView itself and that it only complains after it's built.
In addition, where did Qt 5.6.2 come from? Because Ubuntu 16.04 doesn't have it by default.
I assigned an alias to source the bashrc. I ususaly open a new terminal when I want to load it again.
How can I enforce it to use the required version?
I downloaded qt from their website and installed it.
I wasn't aware that they had binary packages for Linux too!
I've tested this myself and the problem is with the pre-built Qt 5.6.2 that has built into it a static minimal library of protobuf, which is older than the one that ParaView builds itself. The consequence is that when there is a lookup for the desired object from said library, the one in Qt 5.6.2 is picked up first and breaks ParaView's stack.
Since you are using OpenFOAM-dev, you can switch back to using Qt4 that comes with Ubuntu 16.04, because the bug reported at https://bugs.openfoam.org/view.php?id=2640 has already been fixed in OpenFOAM-dev and OpenFOAM 5.x.
As for using pre-built Qt 5 versions, you could try newer versions, possibly the latest Qt 5.9.x.
For future reference, in order to be able to build with this pre-built Qt5 version, I also had to set the following environment variables:
along with the '-qmake' option in 'makeParaView'. The first line was so that the libraries would link and the second is because the 'Find-Qt5' CMake logic is now part of Qt5's own stack.
I'm closing this as no change required and will add a link to #2640 for future reference.
|2017-08-22 13:50||taherc||New Issue|
|2017-08-22 21:38||wyldckat||Note Added: 0008619|
|2017-08-22 21:53||taherc||Note Added: 0008620|
|2017-08-23 19:26||wyldckat||Note Added: 0008627|
|2017-08-23 19:26||wyldckat||Relationship added||related to 0002640|
|2017-08-23 19:26||wyldckat||Assigned To||=> wyldckat|
|2017-08-23 19:26||wyldckat||Status||new => closed|
|2017-08-23 19:26||wyldckat||Resolution||open => no change required|