Qt - 如何在Linux上动态部署应用程序?

时间:2016-07-14 21:58:27

标签: c++ linux qt deployment

我有一个应用程序是我在Linux上使用Qt Creator构建的,现在想要部署它。但是,我不想静态地构建它,因为我不希望它是开源的。我尝试了User命令,但是它只列出(而不是添加)应用程序运行所需的其他依赖项。我的问题是,如何在不必单独查找这些文件的情况下收集必要的依赖项?是否有一个工具,例如Windows上的windeployqt.exe,我可以在Linux上用于同样的目的吗?还是有比我想到的更好的方法?

2 个答案:

答案 0 :(得分:0)

  1. 获取Cygwin setup.exe:http://www.cygwin.com/
  2. 1.1。运行setup.exe并继续打包选择列表。

    1.2。在Devel catagory下,选择编译源代码所需的工具。对于      例如'GNU make'。

    1.3。完成安装。

    1. 获取cygwin的linux交叉编译器:  “cygwin-gcc-linux.tar.bz2”(68.2 Mb)。  md5sum:340e91a346f5bb17e660db10e43005b8

      这些编译器由crosstool 0.28-rc37制成。这个包包含:  用于i386的gcc-3.3.4和gcc-2.95.3(glibc 2.1.3)和用于amd64的gcc-3.3.3  (glibc 2.3.2)。

      请注意!现在有更新版本的GCC avai与glibc 2.3.2:  “cygwin-gcc-3.3.6-glibc-2.3.2-linux.tar.bz2(i386,x86_64)”。

    2. 2.1。将'cygwin-gcc-linux.tar.bz2'复制到'c:\ cygwin'或安装目录      您在setup.exe中选择了。

      2.2。打开Cygwin shell并使用'cd /'.

      将目录更改为root

      2.3。使用以下命令解压缩到Cygwin root:      'tar -jxvf cygwin-gcc-linux.tar.bz2'。

      交叉编译器安装在'/ opt / crosstool'下。你可以使用theim  直接或使用命令:gcc-linux,g ++ - linux,gcc-linux-2.95,  g ++ - linux-2.95,gcc-linux-x86_64和g ++ - linux-x86_64。

      来自:Cross-compiling on Windows for Linux 更多信息here

答案 1 :(得分:0)

听起来您想要使用共享库部署选项:

http://doc.qt.io/qt-5/linux-deployment.html#creating-the-application-package

然后,如果你想要更进一步,你可以考虑制作.rpm或.deb。

现在有许多qt项目的例子可以在GitHub上使用并且已经创建了包。通常对于预构建的二进制文件,您需要为x86创建一个,为x64创建一个单独的二进制文件。

希望有所帮助。