2012年9月4日 星期二

Using 'ccache' to build Android

在 android.com 的網站上有段說明在編譯 Android 可以使用 CCACHE 來加快編譯的速度,很好奇究竟可以影響多少,於是我便按說明試了試。

首先,依 "Downloading the Source Tree" 及 "Getting Android-x86 source code" 的說明下載了 Ice Cream Sandwich (Android 4.0) 的 X86 版本程式碼。

接著先試著在使用 CCACHE 時編譯。執行下面這個指令進行第一次編譯:

time make iso_img -j2 2>&1 | tee logs/`date +%y%m%d-%H%M%S` 

耐心等待它編譯完成後,看了看 time 指令的回應,約使用了 305 分鐘。嗯…看來那台機器只能拿來玩玩了,真要改東改西的話,大概會很悶吧!

real    304m11.544s
user    561m15.453s
sys     28m19.942s 

OK,接著執行 m clobber 將所有編譯的產物全部清除,然後再執行同一個指令編譯一次。這回所花的時間明顯減少了許多:

real    103m54.481s
user    168m58.174s
sys     16m45.295s 

果然,CCACHE 是可以大量減少編譯時間的。這篇只是簡單看看 CCACHE 的效果,所以前後兩次編譯並沒有修改任何一行程式碼,至於如果有修改了程式碼,這篇文章的效果僅供參考唷!哈!

延伸閱讀: