如何提高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", 會提高編譯速度。









 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM