记录Qt跨平台的坑,方便日后翻阅。
一、环境安装
本人用的是qt 5.14.2.直接在官网下载即可。地址:Index of /archive/qt/5.14/5.14.2
下载linux版本。
下载之后 添加可执行权限。
chmod 777 qt-opensource-linux-x64-5.14.2.run
然后执行。
出现坑1:
无法运行。
解决坑1办法:进入统信的开发者模式才行。
这是已进入的画面。中间就是各种扫二维码绑手机。
然后一路安装。
安装成功后。
开始编译,各种问题修改。windows都可以的,在他下面就是有问题。修改就行了。搞定代码的编译和运行问题。
然后开始打包。
windows有 windeployqt 打包工具,我想着qt包里应该也有linuxdeployqt.查找了一下没有。
好吧,网上查了一下发现需要下载。
地址: https://github.com/probonopd/linuxdeployqt
下载之后也是添加可执行模式。
后面就在安装 patchelf
sudo apt-get install patchelf //安装
patchelf --version //验证
然后添加qt的环境。就像windows中系统环境变量 根据自己的qt环境来。
vim ~/.bashrc
在最后面添加上图的代码。
特别注意。 第一行。要把$PATH 添加到最后。这样的话可以优先从qt的库拉依赖而不是从系统中拉。
我就在这里踩了大坑。一直报查找到的lib不兼容,不是qt的lib.
一直报这个错。后面我重新梳理了一下 应该是库文件的问题,然后看了一下linux环境。发现确实是这样。在PATH里后面最后面的才是qt的库文件。所以要把他放在最前面。
然后执行,就可以顺利打包了、
linuxdeployqt appname -appimage