Qt 是一个1991年由Qt Company开发的跨平台C 图形用户界面应用程序开发框架,可以实现一次编码,多平台编译部署。Qt源码先由qmake生成Makefile文件,然后使用make命令进行编译,最后通过各个平台的 deployqt工具进行依赖文件拷贝,我当前安装的版本是Qt5.12.9,这里来记录学习下,不同平台对应的编译器可看下图。
图片来源:https://www.cnblogs.com/georgeOfChina/p/7735157.html
qmake
和 mingw32-make
来生成 exe。QtDemo
,然后打开Qt5.12.9自带的MinGW,进入该目录。windeployqt
拷贝依赖的所有库文件。E:\Qt\Qt5.12.9\5.12.9\mingw73_64\bin\windeployqt Demo.exe
运行结果如下:
在Qt5.12.9安装目录下,我没有找到该工具,所以需要手动去下载安装,安装参考https://www.cnblogs.com/linuxAndMcu/p/11016322.html
wget https://github.com/probonopd/linuxdeployqt/releases/download/continuous/linuxdeployqt-continuous-x86_64.AppImage
链接地址:https://github.com/probonopd/linuxdeployqt/releases
chmod x linuxdeployqt-continuous-x86_64.AppImage
mv linuxdeployqt-continuous-x86_64.AppImage linuxdeployqt-x86_64
sudo mv linuxdeployqt-x86_64 /usr/local/bin
linuxdeployqt-x86_64 --version--version
vi ~/.bashrc
打开 ~/.bashrc 文件,将下面的配置添加到文件末尾。
export PATH=/opt/Qt5.12.9/5.12.9/gcc_64/bin:$PATH
export LD_LIBRARY_PATH=/opt/Qt5.12.9/5.12.9/gcc_64/bin/lib:$LD_LIBRARY_PATH
export QT_PLUGIN_PATH=/opt/Qt5.12.9/5.12.9/gcc_64/bin/plugins:$QT_PLUGIN_PATH
export QML2_IMPORT_PATH=/opt/Qt5.12.9/5.12.9/gcc_64/bin/qml:$QML2_IMPORT_PATH
使新的环境变量生效
source ~/.bashrc
运行命令,拷贝所有依赖文件
linuxdeployqt-x86_64 Demo -appimage
忽略错误:
ERROR: Desktop file missing, creating a default one (you will probably want to edit it)
ERROR: Icon file missing, creating a default one (you will probably want to edit it)
执行完后就生成了一堆的依赖文件和目录,此时,就可以直接运行了Demo 或 AppRun了。
vi QtDemo.desktop
创建桌面图标文件,按下面格式输入(默认有一个default.desktop,也可以用它进行修改)将你想要的logo放在目录下。
#-- 全局安装(所有用户可用),将xxx.desktop 复制到/usr/share/applications #-- 当前用户可用, 将xxx.desktop 复制到 ~/.local/share/applications 目录即可 [Desktop Entry] Version=1.0 Name=QtDemo Comment=A demo for Qt deploy Exec=/home/lai/linux/nfs/code/qtProject/QtDemo/Demo Icon=/home/lai/linux/nfs/code/qtProject/QtDemo/logo.png Terminal=false Type=Application Categories=Utility;Application;
创建完文件后,还要赋权限,ok,大功告成,可以直接双击QtDemo启动应用程序了。
chmod 755 QtDemo.desktop
Qt 编程方便,界面好看,又支持多平台编译,在桌面和嵌入式领域已经有相当规模应用了,相信它会越来越强大。
联系客服