Forum Navigation
You need to log in to create posts and topics.

Ovito Pro 3.3.5 Installation : /lib64/libQt5Gui.so.5: version `Qt_5_PRIVATE_API' not found

Hi,
I'm trying to install the latest Ovito Pro (3.3.5) on my Fedora 31, and am having an issue when executing ovito.

I used the same installation procedure with Ovito Pro 3.3.0, which runs fine.

Here is the output I get :

For 3.3.5 :

cd ~/Softwares/ovito-pro-3.3.5-x86_64/bin
./ovito
./ovito: /lib64/libQt5Gui.so.5: version `Qt_5_PRIVATE_API' not found (required by /home/arnaud/Softwares/ovito-pro-3.3.5-x86_64/bin/../lib/ovito/libQt5Widgets.so.5)
./ovito: /home/arnaud/Softwares/ovito-pro-3.3.5-x86_64/bin/../lib/ovito/libQt5Core.so.5: version `Qt_5.13' not found (required by /lib64/libQt5Gui.so.5)
./ovito: /home/arnaud/Softwares/ovito-pro-3.3.5-x86_64/bin/../lib/ovito/libQt5Core.so.5: version `Qt_5.13.2_PRIVATE_API' not found (required by /lib64/libQt5Gui.so.5)

 

I'll attach the full output of the "ldd ovito" command for both executable versions (3.3.0, which works and 3.3.5, which does not). I noticed that for 3.3.5, the system wide libQt5Gui library is used.

libQt5Gui.so.5 => /lib64/libQt5Gui.so.5 (0x00007f72282d9000)
libQt5Core.so.5 => /home/arnaud/Softwares/ovito-pro-3.3.5-x86_64/bin/./../lib/ovito/libQt5Core.so.5 (0x00007f7227aa7000)

I believe that the issue is due to Qt_5_PRIVATE_API is missing in recent Qt versions :  https://unix.stackexchange.com/questions/576599/version-qt-5-private-api-not-found

Though, I tried updating my LD_LIBRARY_PATH variable with no success :

export LD_LIBRARY_PATH=/home/arnaud/Softwares/ovito-pro-3.3.5-x86_64/lib/ovito/lib/:$LD_LIBRARY_PATH
❯ ./ovito
./ovito: /lib64/libQt5Gui.so.5: version `Qt_5_PRIVATE_API' not found (required by /home/arnaud/Softwares/ovito-pro-3.3.5-x86_64/bin/../lib/ovito/libQt5Widgets.so.5)
./ovito: /home/arnaud/Softwares/ovito-pro-3.3.5-x86_64/bin/../lib/ovito/libQt5Core.so.5: version `Qt_5.13' not found (required by /lib64/libQt5Gui.so.5)
./ovito: /home/arnaud/Softwares/ovito-pro-3.3.5-x86_64/bin/../lib/ovito/libQt5Core.so.5: version `Qt_5.13.2_PRIVATE_API' not found (required by /lib64/libQt5Gui.so.5)

If you have an idea of a possible workaround, any help will be very welcome.

Best,

Uploaded files:

Hi,

To give us a complete picture of the situation, please execute the ovito executable with the LD_DEBUG environment variable set:

export LD_DEBUG=libs
./bin/ovito

Please attach the terminal output, which contains more information on the set of shared libraries getting loaded at runtime. Thanks.

-Alex

Thanks for your answer. The output is attached.

Best,

Uploaded files:

Thanks. Something seems to go wrong during the loading of the shared library libQt5Gui.so.5:

71367: find library=libQt5Gui.so.5 [0]; searching
71367: search path=/home/arnaud/Softwares/ovito-pro-3.3.5-x86_64/bin/../lib/ovito:/home/arnaud/Softwares/ovito-pro-3.3.5-x86_64/bin/../lib/ovito/plugins (RPATH from file ./ovito)
71367: trying file=/home/arnaud/Softwares/ovito-pro-3.3.5-x86_64/bin/../lib/ovito/libQt5Gui.so.5
71367: trying file=/home/arnaud/Softwares/ovito-pro-3.3.5-x86_64/bin/../lib/ovito/plugins/libQt5Gui.so.5
71367: search cache=/etc/ld.so.cache
71367: trying file=/lib64/libQt5Gui.so.5

The copy of this library shipping with OVITO is considered by the linker (first trying file=... line), but for some reason it is not getting loaded and the linker falls back to the system version of the library, which is incompatible.

Please check if the file ovito-pro-3.3.5-x86_64/lib/ovito/libQt5Gui.so.5 exists. It is a symbolic link to the file libQt5Gui.so.5.12.9 in the same directory, which is the actual shared library. Make sure the symbolic link is not broken. This may happen, in particular, when the files from the OVITO installation archive were extracted on a Window machine before copying them over to the target Linux machine.

The problem was caused by the absence of ovito-pro-3.3.5-x86_64/lib/ovito/libQt5Gui.so.5. Actually, a bunch of other libraries were broken (e.g Error: Cannot load library /home/arnaud/Softwares/ovito-pro-3.3.5-x86_64/lib/ovito/plugins/StdObjGui.so), so creating the symlink libQt5Gui.so.5 was not enough. So I tried to reinstall.

For some reason though, after I re-downloaded the archive, re-extracted the same way (using nautilus), everything worked fine...

I guess there was some issue the first time I extracted the archive.

Anyway, thanks a lot for your help !