Android探索之旅 | 配置ccache,大大加快編譯速度

1240

-- 簡書作者 謝恩銘 轉載請註明出處

源碼項目編譯ccache配置


一般來說,我們在編譯大型項目時,總會用到make之類的命令。比如我們公司目前的Android項目代碼,已經很大了,有幾百萬行的代碼量。

底層是C語言,Perl,C++,上層是Java。這樣的項目每一次編譯都需要耗費不少時間。

如何才能加快編譯時間呢?今天來推薦一個很好用的工具:ccache

ccache(“compiler cache”的縮寫,就是英語“編譯器緩存”的意思)工具會高速緩存編譯生成的信息,並在編譯的特定部分使用高速緩存的信息。

比如它會緩存頭文件,這樣就節省了通常使用 cpp 解析這些信息所需要的時間。

不是真正去讀取、解釋其內容,ccache 只是將最終的文本拷貝到文件中,使得它可以立即被編譯。

使用ccache可以大大加快編譯速度:第一次編譯速度會比較慢一些,但是一旦在第一次編譯中ccache把一些中間文件拷貝到了緩存中,那之後的編譯就會快得飛起,因爲不需要再重新生成這些中間文件。

關於ccache很詳細的解釋和用法可以參考這篇文章。
通過 ccache 改善協同構建時間

我就不贅述了。只演示如何快速上手ccache。

以Debian這個Linux發行版(Ubuntu也屬於此家族)爲例:

安裝


sudo apt-get install ccache

使用


ccache -s   # 顯示狀態參數 (s是英語status的縮寫,表示《狀態》)
ccache -C   # 清除緩存(C是大寫的,是英語Clear的縮寫,表示《清除》)

配置


  • 編輯 .bashrc 文件
vim ~/.bashrc
  • 在其中加入以下三行
export NDK_CCACHE = ccache
export CCACHE_DIR = ~/.ccache      # (目錄隨便指定)
export PATH = /usr/lib/ccache:$PATH
  • source命令使修改立即生效
source ~/.bashrc
  • 分配緩存大小
ccache -M 2G    #(分配2G緩存)

好了,從此以後盡享ccache帶來的飛一般編譯感覺吧。


我是謝恩銘,在法國巴黎奮鬥的嵌入式軟件工程師。
目前工作是Android嵌入式和app開發。
熱愛生活,喜歡游泳,略懂烹飪。
人生格言:向着標杆直跑

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章