2017-05-04 70 views
0

我正在实现一个拥有30多个视图的qt Windows桌面应用程序。我使用了一个QStackedwidget,其中包含100多个页面。每个页面包含100多个QWdiget。Qt Creator 5.6如何在一个项目中加速编译大量(3000+)小部件

现在,当我编译我的项目时,我的MacBook Pro 2013(i5,8G,Windows 10)上Qt Creator 5.6(带有jom/msvc2013)需要30分钟以上。在编译时,CPU使用率为 Microsoft C/C++编译器驱动程序约为35%,内存使用量约为400MB。

花了这么长时间来编译我的项目是否合理?有没有什么办法可以加速它而不更新我的硬件?

感谢

+0

如果您的小部件很常见,或者您可以以某种方式加入类似的部件,则可以使用'.setEnabled(true/false)'和一些决定顺序和外观的函数。如果不是... –

+0

我敢打赌,这是一个长期的Qt元代码生成器。除了并行化编译和改进你的代码结构(包含更少的包含和更多的前向声明)之外,我认为你没有机会改进这么多。但是,如果你能将这个因素提高3倍,那还不错。 –

回答

0

你试过告诉qmake将使用更多的CPU内核?酷睿i5拥有4个核心,您可以设置:

set MAKEFLAGS=-j4 

另外,如果你希望它是动态的,你可以试试这个变量(即我读过有关,但不使用自己):

set MAKEFLAGS=-j%NUMBER_OF_PROCESSORS%