如何在所有可用的核心上并行构建CMake项目



这个相关问题展示了如何使用指定数量的核心构建CMake项目。例如,如果我想使用10个核心,我可以这样调用CMake:

cmake --build . -j 10

我的问题是:如何使用所有可用内核进行构建。我实际上想让CMake自动检测我的核心计数并使用它们。

从CMake 3.22开始,没有标准的方法可以做到这一点。然而,也有一些实用的方法。

  1. 如果使用NinjaNinja Multi-Config生成器,在任何平台上,只需使用cmake --build /path/to/build-dir运行构建即可使用所有内核
  2. 如果您使用的是类似UNIX的命令行,则可以运行cmake --build . -j $(nproc)
  3. 如果使用Windows/cmd,则可以运行cmake --build . -j %NUMBER_OF_PROCESSORS%

最新更新