繁体   English   中英

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

[英]Qt - How to deploy application dynamically on Linux?

我有一个使用Qt Creator在Linux上构建的应用程序,现在想部署它。 但是,我不想静态构建它,因为我不想将其开源。 我尝试了ldd ./YourExecutable命令,但是该命令仅列出(而不添加)应用程序运行所需的其他依赖项。 我的问题是,如何在不必单独查找这些文件的情况下收集必要的依赖关系? 是否可以在Linux上出于相同目的使用诸如Windows上的windeployqt.exe之类的工具? 还是有比我正在考虑的方法更好的方法?

  1. 获取Cygwin setup.exe: http//www.cygwin.com/

1.1。 运行setup.exe,然后继续选择软件包列表。

1.2。 在“开发类别”下,选择编译源所需的工具。 例如“ GNU make”。

1.3。 完成安装。

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

    这些编译器使用crosstool 0.28-rc37制作。 该软件包包含:用于i386(glibc 2.1.3)的gcc-3.3.4和gcc-2.95.3和用于amd64(glibc 2.3.2)的gcc-3.3.3。

    注意! 现在有了glibc 2.3.2可用的较新版本的GCC:“ cygwin-gcc-3.3.6-glibc-2.3.2-linux.tar.bz2(i386,x86_64)”。

2.1。 将“ cygwin-gcc-linux.tar.bz2”复制到“ c:\\ cygwin”或安装在setup.exe中选择的目录。

2.2。 打开Cygwin Shell,将目录更改为以'cd /'为根目录。

2.3。 使用命令“ tar -jxvf cygwin-gcc-linux.tar.bz2”解压缩到Cygwin根目录。

交叉编译器安装在“ / opt / crosstool”下。 您可以直接使用theim或通过以下命令使用它们:gcc-linux,g ++-linux,gcc-linux-2.95,g ++-linux-2.95,gcc-linux-x86_64和g ++-linux-x86_64。

来源: 在Windows交叉编译的Linux更多的信息在这里

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

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

然后,如果您想进一步发展,可以考虑制作.rpm或.deb。

现在有很多qt项目的示例可以在GitHub上获得,并且已经制作了软件包。 通常,对于预编译的二进制文件,您需要为x86创建一个,为x64创建一个单独的。

希望能有所帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM