1. 程式人生 > >使用make編譯原始碼,使用-j 引數的作用

使用make編譯原始碼,使用-j 引數的作用

make是進行編譯的常用工具,原來只是簡單使用,對其引數不甚瞭解,但是看到一些原始碼編譯指南,在make 命令中加入-jn(n指2、4、8等數字),啥意思,查了一下make 的 man頁,對其解釋如下:

 -j [jobs], --jobs[=jobs]
Specifies  the  number  of jobs (commands) to run simultaneously.  If there is more than one -j option, the last one is effective.If the -j option is given without an argument, make will not limit the number of jobs that can run simultaneously.


翻譯一下,即此引數指定並行執行任務的數量,如果提供了多個-j,最後一個是有效的。如果-j沒有給定具體的數量,make命令將不限制並行任務的數量(會有啥後果,不知道!).舉個例子,如果只需make -j2 ,則make允許2個編譯命令同時只需,從而充分利用CPU的能力,提高編譯速度,特別是在多核CPU上。當然,具體多少個任務同時執行為佳,還需要根據具體的機器配置,任務數太多,反而效果不好。