現在隨便買都是Multicore CPU
但是常常在build程式的時候還是一樣慢
事實上GNU Make提供並行建構有段時間了
而且使用方式很簡單
只要在Make後面加-j n, n為最大任務數(# Thread)
ex:
make -j 8
n要多大多小視CPU核心而定
個人習慣上n設為 2*#core
i7上就設
make -j 16
不過這不是加速編譯的萬靈藥
在編譯初次build GCC的時候用了絕對會錯誤...
事實上原因在於舊有的許多Makefile在相依性上並沒有設計的很好所造成
但是在之後(修改部分檔案)重新建置時就很管用
尤其是GCC改md的部份動一個就幾乎要重編譯的情況下很管用
另外如果make -j n的過程如果錯誤的話再打一次試試看
真的不行的話就make clean all認命的慢慢的build吧...
沒有留言:
張貼留言