📌  相关文章
📜  找不到 CMAKE_CXX_COMPILER. (1)

📅  最后修改于: 2023-12-03 15:25:48.503000             🧑  作者: Mango

找不到 CMAKE_CXX_COMPILER.

当你在使用 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
方案二:将编译器添加到 PATH 环境变量中

如果你已经安装了编译器,但是 CMake 仍然找不到编译器,在这种情况下,你可以将编译器添加到 PATH 环境变量中。

在 Ubuntu 系统上,你可以通过以下命令将 GCC 添加到 PATH 中:

export PATH=$PATH:/usr/bin/gcc

在 macOS 上,你可以通过以下命令将 Clang 添加到 PATH 中:

export PATH=$PATH:/Library/Developer/CommandLineTools/usr/bin/
方案三:手动设置编译器路径

如果你知道编译器的准确位置,你可以手动设置编译器路径。

你可以使用以下 CMake 变量来设置编译器路径:

  • CMAKE_CXX_COMPILER:C++ 编译器路径
  • CMAKE_C_COMPILER:C 编译器路径

例如,如果你的编译器安装在 /usr/bin/g++ 下,你可以使用以下命令来手动设置 C++ 编译器路径:

cmake -DCMAKE_CXX_COMPILER=/usr/bin/g++ ..
总结

在构建项目时,找不到 C++ 编译器可能会导致构建失败。你可以通过安装编译器、将编译器添加到 PATH 环境变量中或手动设置编译器路径来解决这个问题。