我正在基于Linux操作系统上从事基于Qt的项目。我们使用Qt5.9.6。当我们启动应用程序时,我们已经从Qt获得了这个日志
qt.network.ssl: Incompatible version of OpenSSL
经过一些研究,我发现Qt加载openssl的1.1版本,而Qt5.9.6需要1.0.2k版本。因此,我将openssl的正确版本放在我们的应用程序旁边,并相应地设置RPATH。但它不起作用。我将尝试使用LD_LIBRARY_PATH,这是可行的。
我使用LD_DEBUG=libs查看程序试图加载动态库的位置,看起来对于Qt来说,RPATH是部分使用还是完全不使用。
我用一个最
Qt到5.13有一个奇怪的bug,所以我尝试将Qt的库版本更改为最新版本(5.15)。我将QT5.15库安装到/home/myaccount/Qt/5.15.0/gcc_64/lib中,并相应地设置了/etc/ld.so.conf.d/Qt.5.15.0.conf。以下是ldd usr/bin/konsole的结果:
/usr/bin/konsole: /lib/x86_64-linux-gnu/libQt5Core.so.5: version `Qt_5.15' not found (required by /home/myaccount/Qt/5.15.0/gcc_64/lib/l
我已经使用位于~/opt/qt-4.6.0/中的我自己的Qt4库编译了一个Python模块,但是当我尝试导入该模块时,加载的动态库来自我的MacPorts Qt4安装。
$ /opt/local/bin/python2.6
>>> import vtk
objc[58041]: Class QMacSoundDelegate is implemented in both /Users/luis/opt/qt-4.6.0/lib/QtGui.framework/Versions/4/QtGui and /opt/local/libexec/qt4-mac/lib/QtGui.f