Linux系统打包Qt
因为使用了 QWebEngineView,所以遇到了打包问题,记录一下我的失败过程。等以后有机会再接着弄吧
目前知道的打包方式有三种:
1.linuxdeplot + linuxdeploy-plugin-qt
2.linuxdeplotqt + appimagetool
3.使用脚本,收集 ldd 显示的依赖库
第一种(linuxdeplot + linuxdeploy-plugin-qt),网上资料少,不准备用这种
第二种(linuxdeplotqt + appimagetool),kylin官方有出文档,详细介绍了使用方法,我要兼容UOS,用了以后没有成功
2.1 首先是下载这两个东西
linuxdeployqt 源码地址:https://github.com/probonopd/linuxdeployqt x86-64 架构:https://wwpp.lanzoum.com/ipftx0o9tura 密码:630z arm64 架构:https://wwpp.lanzoum.com/iElNK0o9tuve 密码:4vhg mips64el 架构:https://wwpp.lanzoum.com/ilv9V0o9tule 密码:8j2v loongarch64 架构:https://wwpp.lanzoum.com/iq4000o9tung 密码:az5r appimagetool 源码地址:https://github.com/AppImage/AppImageKit x86-64 架构:https://wwpp.lanzoum.com/iES3j0o9t5wf 密码:dqwo arm64 架构:https://wwpp.lanzoum.com/igZig0o9t5qj 密码:68ek loongarch64 架构:https://wwpp.lanzoum.com/iUzkL0o9t5oh 密码:1jtx
2.2 重命名这两个工具,并放入系统环境
mv linuxdeployqt-continuous-x86-64.AppImage linuxdeployqt mv appimagetool-x86-64.AppImage appimagetool sudo cp linuxdeplotqt /usr/bin/ sudo cp appimagetool /usr/bin/
2.3 设置Qt环境路径
# 修改 bashrc 文件 sudo vi ~/.bashrc
# 在文件最后面加入自己的Qt环境路径 QT_DIR=/home/hy/Qt/5.15.2/gcc_64 export PATH=${QT_DIR}/bin:$PATH export LIB_PATH=${QT_DIR}/lib:$LIB_PATH export PLUGIN_PATH=${QT_DIR}/plugins:$PLUGIN_PATH export QML2_PATH=${QT_DIR}/qml:$QML2_PATH export LD_LIBRARY_PATH=${QT_DIR}/lib:$LD_LIBRARY_PATH
# 立即更新 bashrc 文件
source ~/.bashrc
2.4 执行命令,打包Qt
linuxdeplotqt qtAppName -appimage
第三种(使用脚本,收集 ldd 显示的依赖库),也是没有成功
创建sh文件
#!/bin/bash LibDir=$PWD"/lib" Target=$1 lib_array=($(ldd $Target | grep -o "/.*" | grep -o "/.*/[^[:space:]]*")) $(mkdir $LibDir) for Variable in ${lib_array[@]} do cp "$Variable" $LibDir done
其他:
打开Qt的调试,在运行软件,可以看到详细报错
export QT_DEBUG_PLUGINS=1 ./app
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具