我在Centos 7上安装了Qt5.8,并且正在尝试为使用Qt 5.8的应用程序安装RPM文件。当我执行以下命令时,我收到一条错误消息,即找不到libQt5WebEngineCore库文件:
$ rpm -i Application.rpm
error: Failed dependencies:
libQt5WebEngineCore.so.5()(64bit) is needed by Application.x86_64
libQt5WebEngineCore.so.5(Qt_5)(64bit) is needed by Application.x86_64
libQt5WebEngineWidgets.so.5()(64bit) is needed by Application.x86_64
libQt5WebEngineWidgets.so.5(Qt_5)(64bit) is needed by Application.x86_64
libXslt-devel is needed by Application.x86_64
但是,当我提取应用程序可执行文件并执行ldd时,看起来所有必需的库都已存在并且运行良好。当我尝试安装RPM时,它只是抱怨。
为简洁起见,删除了不相关的库
$ ldd ./Application
libQt5WebEngineCore.so.5 => /opt/Qt5.8.0/5.8/gcc_64/lib/libQt5WebEngineCore.so.5 (0x00007f9e27573000)
libQt5WebEngineWidgets.so.5 => /opt/Qt5.8.0/5.8/gcc_64/lib/libQt5WebEngineWidgets.so.5 (0x00007f9e27337000)
libxslt.so.1 => /lib64/libxslt.so.1 (0x00007f9e1fd63000)
libQt5WebEngineCore文件位于/op5/Qt5.8.0/目录中。为什么找不到它?这是LD_LIBRARY_PATH问题吗?
由于此系统包含手动安装的Qt 5.8,所以无法将Qt放入SPEC文件的BuildRequire或Require部分。