构建独立的Qt Linux可执行文件

问题描述:

我试图将我的Ubuntu Qt项目构建为独立的可执行文件,以便将其轻松分发给其他Ubuntu用户。我发现下面的指南:构建独立的Qt Linux可执行文件

http://doc.qt.io/qt-5/linux-deployment.html

但是,我甚至无法获得的第一步工作。导航到Qt目录后,我找不到配置脚本(bash: ./configure: no such file or directory),当我搜索所有的子文件夹时,我所能找到的就是一个名为configure.prf的东西。我试图运行使用sudo该脚本,但我得到了以下错误:

sudo: ./configure.prf: command not found

我也尝试下载Qt的安装程序可执行文件,但它没有任何选项来安装静态库。

请让我知道我做错了什么或指向我更好的资源。

+0

你想安装Qt本身还是构建你的程序? – m7913d

+0

您正试图在已安装的Qt包中查找源代码?您应该下载源代码。例如,最新版本是http://download.qt.io/official_releases/qt/5.9/5.9.1/single/qt-everywhere-opensource-src-5.9.1.tar.xz,或者查看它在档案中: https://download.qt.io/archive/qt/。 –

+0

Qt已安装,我只是试图构建我的程序。该指南说,第一步是安装静态Qt库,我不知道该怎么做。 – user1765354

Qt for Linux/X11 - Deployment页面不会告诉您安装Qt的静态构建。

它所做的是为您提供2种在Linux系统上分发应用程序的选项。一种选择是使用静态Qt构建,另一种是使用共享库。而且由于Qt的静态构建不是分布式的,它会告诉你自己构建它。

Knwing,你现在有2个选择。首先是在静态链接和动态链接之间进行选择。网络上广泛详细介绍了两者的优点和缺点。快速总结:

  • 静态库:
    • 没有依赖关系
    • 你必须建立自己的Qt,exe文件会更大
  • 动态lib目录下:
    • 你可以按原样使用Qt。该exe文件将更小。
    • 您必须确保运行时会有依赖关系。

第二种选择是你将如何传达您的应用程序。最好的方法是创建一个.deb包。这是很难做到的,但它会利用包管理器的优势,并照顾你的依赖关系(如果你使用动态链接,这真的很有趣)。或者,您可以将二进制文件放入tarball(zip,tgz等)中,并向最终用户提供有关安装过程的指示信息(如要安装的软件包)。