隨著嵌入式系統功能越來越多,嵌入式軟件代碼也越來越復雜,Build時間也越來越長。
本文主要介紹如何降低build時間。
降低Build時間
使能Parallel Build
使能Parallel Build (Tools > Options > Project > Enable parallel build) (注意:IDE 9版本以上,Enable parallel build是默認勾選的):
正確包含頭文件
確保頭文件里面使用頭文件保護,以避免頭文件被重復包含:
#ifndef HFILE_H #define HFILE_H /* ... */ #endif
確保源文件里面只包含對應需要的頭文件。源文件里面包含不需要的頭文件可能不會影響編譯的結果,但是會影響build時間(build的時候會對所有的頭文件進行預處理),另外還會影響代碼的可讀性(一般添加對應的頭文件說明跟對應模塊有關聯)。
可以通過查看對應的預處理輸出來查看對應的頭文件包含信息:Options > C/C++ Compiler > Preprocessor > Preprocessor output to file:
編譯會輸出對應的.i文件,里面會包含對應頭文件包含信息:
創建和使用Library
對于一些不需要每次Re-build的代碼(典型的有RTOS的內核靜態代碼,BSP的靜態代碼等),可以創建Library (Options > General Options > Output > Library),然后在工程里面添加對應的Library (Options > Linker > Library > Additional libraries: (one per line)),這樣build的時候對應Library的代碼就不需要重新編譯。
不使能編譯器輸出列表文件
不要勾選輸出編譯器輸出列表文件:Options > C/C++ Compiler > List:
把源文件移到本地電腦上進行Build
如果build的時候,對應源文件沒有在本地電腦上,而是通過網絡連接訪問,建議把源文件移到本地電腦進行build,避免因為網絡連接問題導致build時間很長。
在Windows命令行調用iarbuild命令進行Build
通常來說,在Windows命令行調用iarbuild命令進行build比在IAR Embedded Workbench IDE進行build要稍微快一些。
在Linux服務器上使用IAR Build Tools進行Build
前面介紹的一些方法都是基于Windows的IAR Embedded Workbench,IAR提供了可以在Linux上運行的IAR Build Tools:
通常來說Linux上調用IAR Build Tool進行build會比Windows的IAR Embedded Workbench進行build要快一些。下面是在同等電腦配置下Linux的IAR Build Tools和Windows的IAR Embedded Workbench的build時間對比,可以看到Linux的IAR Build Tools比Windows的IAR Embedded Workbench的build時間要降低不少。如果Linux服務器電腦配置更高,對應的build時間會降低更多。
總結
本文主要介紹了如何降低build時間的一些方法,用戶可以根據具體情況選擇對應的方法來降低build時間,提高研發效率。
審核編輯:劉清
-
嵌入式系統
+關注
關注
41文章
3594瀏覽量
129538 -
RTOS
+關注
關注
22文章
815瀏覽量
119702 -
C++語言
+關注
關注
0文章
147瀏覽量
7001 -
預處理器
+關注
關注
0文章
13瀏覽量
2238
發布評論請先 登錄
相關推薦
評論