如何提高Qt工程的编译速度

Posted darwen

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何提高Qt工程的编译速度相关的知识,希望对你有一定的参考价值。

  当工程代码量大的时候,尤其大量引用第三方类库不当的时候,会导致编译速度下降,严重影响工作效率。

 

 一. 并行编译

1、如果是VC++编译器,可以在 .pro里加入下面一行
  QMAKE_CXXFLAGS += /MP

  或者:

  *msvc* {

    QMAKE_CXXFLAGS += /MP

  }

  指定/mp编译选项,编译器将使用并行编译,同时起多个编译进程并行编译不同的cpp。

 

2、如果是MinGW编译器:
  Projects->Build Settings->Build Steps->make ,参数中填入-j8 (后面的数字是需要指定编译的核数)

 

  二.预编译头文件

  编译时间长,很大一部分时间都是花在预编译上,尤其是头文件各种包含。

 

 1.在pro文件中添加:
PRECOMPILED_HEADER = <path_to_your_pch_file> CONFIG += precompile_header
 2..h文件中使用前置声明, 所有的.cpp 文件中包含 预编译的头文件

三.删除多余的Q_Object宏, 当需不要的时候

 1.如果一个类中,不使用信号,槽,那就没必要使用Q_Object宏
 2.在.cpp文件中的最后,包含相应的moc_*.cpp文件
例如:a.cpp ,moc后,会生成moc_a.cpp, 所以在a.cpp文件的最后,添加#include"moc_a.cpp", 会提高编译速度。









 

以上是关于如何提高Qt工程的编译速度的主要内容,如果未能解决你的问题,请参考以下文章

多核提高编译速度

如何优化 Android Studio 启动,编译和运行速度

开启多线程加快编译速度

如何提高linux makefile的编译速度

petaliinux 使用离线文件编译,提高编译速度

qt多个工程之间调用