You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

CMake 3.10.2构建报错:C/C++编译器未设置问题咨询

解决CMake无法找到C/C++编译器的问题

这个问题我碰到过好多次,核心原因就是CMake没法定位到你配置的编译器路径,或者环境变量里的路径压根不对。咱们一步步来排查解决:

1. 先确认指定的编译器路径是否存在

你报错里说CMake找不到/usr/local/bin/gcc,先验证这个路径是不是真的有文件:

ls /usr/local/bin/gcc

如果返回No such file or directory,说明路径错了。用下面的命令找到系统里实际的gcc路径:

which gcc
# 或者用 whereis gcc 看更详细的位置

通常系统自带的gcc会在/usr/bin/gcc这个位置。

2. 临时指定编译器运行CMake

不想改环境变量的话,直接在cmake命令里明确指定C和C++编译器就行:

cmake . -DCMAKE_C_COMPILER=/usr/bin/gcc -DCMAKE_CXX_COMPILER=/usr/bin/g++

记得把路径换成你刚才查到的实际路径。

3. 检查并修正CC/CXX环境变量

如果你之前手动设置过CC环境变量,可能路径配置错了。先看看当前值:

echo $CC

如果显示的是错误的/usr/local/bin/gcc,先把它清空:

unset CC

然后再重新运行cmake .,CMake会自动搜索系统里已安装的编译器。要是想永久设置正确的环境变量,把下面两行加到你的~/.bashrc(或者~/.zshrc,看你用的shell)里:

export CC=/usr/bin/gcc
export CXX=/usr/bin/g++

保存后执行source ~/.bashrc让配置生效。

4. 确认是否安装了编译器

要是上面的步骤都没用,可能系统里压根没装gcc/g++。Ubuntu/Debian系可以用下面的命令安装编译工具包:

sudo apt update && sudo apt install build-essential

这个包会自动安装gcc、g++和其他编译需要的基础工具。


你的报错信息如下:

XXXXXX@XXXXX:~/XXXXX$ cmake .
CMake Error at /usr/share/cmake-3.10/Modules/CMakeDetermineCCompiler.cmake:48 (message):
Could not find compiler set in environment variable CC: /usr/local/bin/gcc.
Call Stack (most recent call first):
CMakeLists.txt:3 (project)
CMake Error...

内容的提问来源于stack exchange,提问作者zython

火山引擎 最新活动