“CentOS 下 C++ 配置报错”这个问题比较宽泛,不同场景报错原因不一样。下面我先给你最常见的几种情况 + 对应解决办法,你可以对照看看;如果还不行,把具体报错信息贴出来,我可以精准帮你分析。
g++: command not found
或
cc1plus: command not found
sudo yum install -y gcc gcc-c++
验证:
g++ --version
fatal error: iostream: No such file or directory
gcc,没装 gcc-c++sudo yum groupinstall -y "Development Tools"
CMake Error: C++ compiler is not able to compile a simple test program
sudo yum install -y cmake
rm -rf build
mkdir build
cd build
cmake ..
‘std::optional’ is not a member of ‘std’
或
error: ‘filesystem’ is not a namespace-name
安装 devtoolset:
sudo yum install -y centos-release-scl
sudo yum install -y devtoolset-11
scl enable devtoolset-11 bash
永久生效:
echo "source /opt/rh/devtoolset-11/enable" >> ~/.bashrc
验证:
g++ --version
(应为 gcc 11)
undefined reference to `pthread_create'
加上链接参数,例如:
g++ main.cpp -lpthread
常见库:
| 功能 | 参数 |
|---|---|
| 多线程 | -lpthread |
| 数学库 | -lm |
| 动态库 | -ldl |
fatal error: opencv2/opencv.hpp: No such file or directory
安装开发包:
sudo yum install -y opencv-devel
sudo yum install -y boost-devel
或手动编译安装。
cat > test.cpp << EOF
#include <iostream>
int main() {
std::cout << "Hello CentOS C++" << std::endl;
}
EOF
g++ test.cpp -o test
./test
你可以直接贴出:
我可以一步一步帮你定位 ✅