📅  最后修改于: 2023-12-03 15:25:48.503000             🧑  作者: Mango
当你在使用 CMake 构建你的项目时,你可能会遇到类似以下的错误提示:
CMake Error: CMAKE_CXX_COMPILER not set, after EnableLanguage
CMake Error: CMAKE_C_COMPILER not set, after EnableLanguage
-- Configuring incomplete, errors occurred!
这意味着 CMake 在构建过程中找不到 C++ 编译器(CMake_CXX_COMPILER)和 C 编译器(CMAKE_C_COMPILER),从而无法继续构建项目。
这个错误通常是由于编译器没有正确安装或者未将编译器添加到 PATH 环境变量中所致。
如果你的操作系统上没有安装 C++ 编译器(如 GCC、Clang 等),你需要安装一个 C++ 编译器。
在 Ubuntu 系统上,你可以通过以下命令安装 GCC:
sudo apt install g++
在 macOS 上,你可以通过以下命令安装 Xcode 命令行工具:
xcode-select --install
如果你已经安装了编译器,但是 CMake 仍然找不到编译器,在这种情况下,你可以将编译器添加到 PATH 环境变量中。
在 Ubuntu 系统上,你可以通过以下命令将 GCC 添加到 PATH 中:
export PATH=$PATH:/usr/bin/gcc
在 macOS 上,你可以通过以下命令将 Clang 添加到 PATH 中:
export PATH=$PATH:/Library/Developer/CommandLineTools/usr/bin/
如果你知道编译器的准确位置,你可以手动设置编译器路径。
你可以使用以下 CMake 变量来设置编译器路径:
例如,如果你的编译器安装在 /usr/bin/g++ 下,你可以使用以下命令来手动设置 C++ 编译器路径:
cmake -DCMAKE_CXX_COMPILER=/usr/bin/g++ ..
在构建项目时,找不到 C++ 编译器可能会导致构建失败。你可以通过安装编译器、将编译器添加到 PATH 环境变量中或手动设置编译器路径来解决这个问题。