Windows下:
说明:使用Qt自带工具“windeployqt.exe”来拷贝大部分的动态库(.dll),一般有以下两种方法。
前提,将Qt编译方式选为:Release,把编译好的
exe文件拷贝到一个空的文件夹下。如图:

QtCreator程序的发布:Windows下、Linux下。
①(简单、省事)在Qt的安装目录搜索“windeployqt.exe”,很快就找到了。如图:

QtCreator程序的发布:Windows下、Linux下。
打开命令行,直接将windeployqt.exe和编译好的*.exe拖入命令行,中间加一个空格,如图:

QtCreator程序的发布:Windows下、Linux下。
等待片刻即可。
②设置环境变量,同样是搜索到windeployqt.exe后,将该文件所在目录加入环境变量中,如图:

QtCreator程序的发布:Windows下、Linux下。

QtCreator程序的发布:Windows下、Linux下。
以后就可以这么用了,如图:

QtCreator程序的发布:Windows下、Linux下。
比起方法①,少了绝对路径,可以直接输入windeployqt即可。
到此为止,Qt程序需要依赖的大部分*.dll都复制过来了,剩下的少数*.dll手动拷贝过来就可以了。

Linux下:

  1. 从可运行程序的文件中拿出可执行文件

  2. 终端下 使用ldd命令查看需要的连接库 例如 ldd + 可执行文件

  3. 把ldd查询到的所有需要的库导出

  4. 编写.sh文档 (.sh文件命名必须与可执行文件名字一样 例:可执行文件名 test, .sh 文件名为 test.sh)
    .sh文件代码如下:
    #!/bin/sh
    appname=basename $0 | sed s,\.sh$,,
    dirname=dirname $0
    tmp="KaTeX parse error: Expected '}', got '#' at position 9: {dirname#̲?}" if [ "{dirname%KaTeX parse error: Expected 'EOF', got '}' at position 4: tmp}̲" != "/" ]; the…PWD/dirnamefiLDLIBRARYPATH=dirname fi LD_LIBRARY_PATH=dirname
    export LD_LIBRARY_PATH
    dirname/dirname/appname $*

  5. 把所用到的库,可执行文件,.sh文件放到同一目录下

  6. (.sh文件可能没有执行权限)终端中进入这一目录, 输入: chmod +x test.sh

  7. 执行程序点击.sh文件或者终端输入:
    ./test.sh

原文链接:https://blog.csdn.net/qq1623803207/article/details/77896097

相关文章:

  • 2021-08-21
  • 2022-12-23
  • 2021-11-07
  • 2021-08-14
  • 2021-06-07
  • 2021-11-30
  • 2022-12-23
  • 2022-03-07
猜你喜欢
  • 2022-12-23
  • 2021-06-21
  • 2021-07-11
  • 2022-12-23
  • 2021-04-15
  • 2021-07-12
相关资源
相似解决方案