简而言之,问题是:我刚刚在Linux Ubuntu下运行的计算机上使用Qt Creator完成了我的第一个应用程序,现在我该如何让每个人都可以使用它。现在遵循更详细的版本;)
我必须为此问道歉,我知道这个问题可能已被多次询问,而且我可以阅读官方文件。我对编程很陌生,到目前为止我读到的所有东西都让我很困惑。如果你有足够的帮助,请假设我完全不知道:)
我们走了:我刚刚在我的笔记本电脑上用Qt创建器设计了我的第一个应用程序(一个科学程序),它在Linux Ubuntu下运行。它工作正常,我为它感到自豪;)
这是我的项目包括:40个头文件,42个源文件,1个pro文件,1个qrc文件,1个html文件和7个png文件。在代码中,我使用#include
作为一堆相当标准的Qt类(QWidget
,QTextBrowser
等等,可能就像其中的40个一样。)
现在我想把它提供给其他人。对于Linux和Mac用户,我想办法做到这一点:我可以压缩包含我的项目的文件夹,告诉他们在他们的计算机上安装Qt,然后下载并解压缩他们硬盘上的文件,打开一个终端文件夹并运行
qmake myProject.pro
qmake
make
这似乎工作得很好(顺便说一下,这不正是Qt创建者所做的事情吗?qmake
步骤是qmake-qt4 myProject.pro -r -spec linux-g++
而制作步骤是make -w
)。现在,我假设有一个解决方案,我不要求他们下载和安装像200Mo的Qt材料。对于Microsoft Windows用户,我没有任何线索。
如果你能以非常具体的方式向我解释我需要做什么,我将非常感激。不用说,我会寻求最好和最简单的解决方案,我不需要了解有关部署的一切。非常感谢提前!
编辑:如果有用:我一直在使用基于Qt 4.8.1(64位)的Qt Creator 2.5.0,我正在使用Ubuntu 12.04 64位的笔记本电脑
答案 0 :(得分:3)
对于Linux和Mac用户,我会以32和64位格式为他们编译软件 - 没有人喜欢从源代码编译未知软件。显然,为那些更不寻常的架构/操作系统保留源代码选项(并为它们提供模仿Qt Creator调用的命令的shell脚本!)。由于Qt运行时可以从包管理器上获得,只需每个发行版(并且大多数情况下预先安装,例如KDE需要它们),不要求他们从源代码编译,您的用户将拥有更小的下载(如果有的话),并且不要求他们从他们可能不知道的网站下载软件。当然,最好的方法是尝试将您的软件作为一个软件包添加到主要的发行版存储库中,但这可能需要一些时间来组织。
为32位和64位格式的Windows用户编译软件。一般不赞成要求用户下载他们可能不知道的运行时库,并将它们放入他们的system32文件夹......所以大多数应用程序将所有所需的库捆绑到他们的应用程序中。基于Qt的应用程序没有什么不同,因此将运行时放入可执行文件所在的文件夹中。另外,创建一个合适的安装程序更加专业,有一些适用于Windows的免费安装程序应用程序,网络搜索会给你最受欢迎的(我想我也看到了一个关于它的线程)。
正如你所看到的那些平台并不是太不相似,我要提出的主要观点是:不要强迫人们从源头编译!地球上绝大多数人甚至都不知道什么编译是,所以自己提供主要的架构/操作系统。