对于大型项目,在使用cmake控制编译时,仅仅执行make指令效率较低,使用make -j后面跟一个数字,比如make -j4 make -j6 make -j14等。
含义是 让make最多允许n个编译命令同时执行,这样可以更有效的利用CPU资源。
假设我们的系统是cpu是12核,在不影响其他工作的情况下,我们可以make -j12
将cpu资源充分利用起来,一般来说,最大并行任务数为cpu_num * 2
cpu_num=`cat /proc/stat | grep cpu[0-9] -c`
echo "make -j${cpu_num}"
make -j${cpu_num}