【Qt依赖库】Linux 环境下 Qt 可执行程序依赖库打包脚本 您所在的位置:网站首页 linux打包程序找不到so 【Qt依赖库】Linux 环境下 Qt 可执行程序依赖库打包脚本

【Qt依赖库】Linux 环境下 Qt 可执行程序依赖库打包脚本

2024-01-27 09:41| 来源: 网络整理| 查看: 265

文章目录 Linux 环境下 Qt 可执行程序依赖库打包脚本一、利用 ldd 命令查看程序需要的依赖库二、编写依赖库打包脚本三、总结

Linux 环境下 Qt 可执行程序依赖库打包脚本

使用 Qt Creator 完成程序编码之后,虽然会在 Debug 或 Release 文件下生成可执行程序,但是他们是依赖 Qt Creator 环境的,拷贝到别的机器上就会提示加载依赖库错误。

那么该如何解决呢?

一、利用 ldd 命令查看程序需要的依赖库

Linux 环境下可以使用 ldd 命令查看可执行程序所需要的依赖库文件;

# ldd test linux-vdso.so.1 (0x00007ffc29bc3000) libQtGui.so.4 => lib... ... ... 二、编写依赖库打包脚本

利用 第一步中的查找结果,可以提取出依赖库的路径,然后拷贝到指定目录即可;

#!/bin/sh # 可执行程序名 appname="test" # 目标文件夹 dst="./app" # 利用 ldd 提取依赖库的具体路径 liblist=$(ldd $appname | awk '{ if (match($3,"/")){ printf("%s "), $3 } }') # 目标文件夹的检测 if [ ! -d $dst ];then mkdir $dst fi # 拷贝库文件和可执行程序到目标文件夹 cp $liblist $dst cp $appname $dst

把此脚本放到 程序同目录下面,执行之后即可得到一个 打包了可执行程序和依赖库的 app 目录;

三、总结

在 Linux 可以利用 shell 的优势,随心所欲的干一些好玩的工作;

如果是在 Windows 下,Qt 提供了一个 叫做 windeployqt 的工具,可以帮助你完成类似的工作。

——2019-04-23——



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有