问题描述:
使用linuxdeployqt打包时出现以下问题
ERROR: ldd outputLine: "/home/user/Qt5.14.2/5.14.2/gcc_64/lib/libQt5Widgets.so.5: /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5: version `Qt_5_PRIVATE_API' not found (required by /home/user/Qt5.14.2/5.14.2/gcc_64/lib/libQt5Widgets.so.5)"
ERROR: for binary: "/home/user/Qt5.14.2/5.14.2/gcc_64/lib/libQt5Widgets.so.5"
ERROR: Please ensure that all libraries can be found by ldd. Aborting.
问题分析:
qt版本不一致导致的,环境中默认的qmake版本为
QMake version 2.01a
Using Qt version 4.8.7 in /usr/lib/x86_64-linux-gnu
而程序使用的qmake版本为
QMake version 3.1
Using Qt version 5.14.2 in /home/user/Qt5.14.2/5.14.2/gcc_64/lib
解决办法:
使用-qmake=<path>
设置qmake路径即可
/home/user/Downloads/linuxdeployqt appName -qmake=/home/user/Qt5.14.2/5.14.2/gcc_64/bin/qmake -no-translations