我正在尝试按照documentation中提到的说明在Ubuntu Linux上构建QT库4.8.2。
这是我第二次尝试构建......我之前也尝试过,当构建过程即使在12-13小时后仍未完成时,我认为出现了问题,所以我从头开始。
差不多24小时我发出了make命令(在第二次尝试中),构建过程仍在进行中。终端也没有显示任何错误。
在Ubuntu Linux上构建QT库真的花了这么多时间,或者我错过了什么。
答案 0 :(得分:19)
如果您只进行默认的非并行构建,构建Qt即使在快速系统上也需要几个小时。默认情况下,它还会引入许多您可能不需要的库。
首先要尝试make -j
进行并行构建。如果这仍然需要太长时间,那么尝试减少Qt生成的库。你需要QtWebKit吗?如果您计划在应用程序中使用嵌入式Web浏览器,那么您将需要它。如果没有,那么你可以将构建时间减半。输入configure --help
即可查看options。一些可以减少构建时间的有用的是:
注意:以下某些选项不再适用于Qt5
如果您需要在此亚马逊实例中支付时间,那么另一个选择是创建本地Ubuntu计算机(在备用计算机或虚拟机中)并调整其中的选项,直到您获得有效的方式为止,然后在您的Amazon实例上使用该构建配置。
编辑:
在Qt5中,项目更改为使用git子模块,因此如果您使用git checkout构建,那么默认行为是克隆所有子模块,如果有模块,则会大大增加您的构建时间需要。有一个脚本init-repository
是qt5存储库的一部分。您可以使用它来修剪本地存储库以仅包含所需的子模块。例如:
git clone https://git.gitorious.org/qt/qt5.git
cd qt5
./init-repository --module-subset="qtbase qtdeclarative qtquick1"
configure --your-options-here
make -j
在我的机器上,我可以在大约10分钟内完成qtbase的基本构建
答案 1 :(得分:0)
编译Qt 4.7的内存要求 1.2 Gb (主要是QWebKit链接阶段要求),如果你没有足够的创建额外的交换文件(参见https://www.centos.org/docs/5/html/5.2/Deployment_Guide/s2-swap-creating-file.html)