我在用Ubuntu 20.04.02 LTS,并有 snap 版本CMake(3.19.4)已安装。我正在使用它来构建一个用 C++ 编写的应用程序。
当我在终端中构建解决方案时,make 命令需要很长时间才能执行。但是当我在CLion IDE那就是使用CMake(3.17.3),整个过程在几秒钟内完成。
是什么原因导致速度变慢?我该如何加快终端编译速度?
(我在使用 apt 版本(3.16.3)时也遇到了这个问题)
答案1
使用所有可用的 CPU 核心进行并行构建:
cd build
make -j$(nproc)
或者只执行nproc
一次并直接使用该数字:
nproc
8
cd build
make -j8
答案2
使用 Ninja 构建系统(sudo apt install ninja-build
是必需的)。
准备构建:
cmake -G Ninja -B build
接下来是实际的 Ninja 构建(无需-j
再提供任何信息,因为 Ninja 将为您完成繁重的工作并默认运行并行构建作业):
cmake --build ./build
要仅构建特定目标,请使用(默认情况下它试图建立所有目标):
cmake --build ./build --target your_target_name
这很有帮助!