如何:make -jx //其中x是自动确定的

Ahm*_*taq 5 bash alias makefile

阅读完这个问题的答案后: 将"make"默认为"make -j 8"

我想知道是否有办法让-j选项自动使用正确数量的编译线程?

所以我说make.和make命令本身使用6个或4个或8个线程取决于硬件上?

krl*_*mlr 14

make如果你只是使用make -j它不会自己查找核心数- 相反,它会并行化到最大值.但是,您应该能够确定核心数量

grep -c "^processor" /proc/cpuinfo
Run Code Online (Sandbox Code Playgroud)

或者(根据Azor-Ahai的评论,如果您的系统可用)

nproc
Run Code Online (Sandbox Code Playgroud)

因此:

make -j $(nproc)
Run Code Online (Sandbox Code Playgroud)

有关详细信息,请参阅"如何从命令行获取Linux中的CPU /核心数? ".另请参阅GNU make:作业数量是否等于系统中的CPU核心数?