在 CentOS 下编译 C++ 程序,常见做法如下(从基础到进阶):
g++g++ --version
如果提示 command not found,需要先安装。
sudo yum groupinstall "Development Tools"
该命令会安装:
gccg++makebinutilssudo yum install gcc gcc-c++
示例:hello.cpp
#include <iostream>
using namespace std;
int main() {
cout << "Hello CentOS C++" << endl;
return 0;
}
g++ hello.cpp
生成默认可执行文件:
./a.out
g++ hello.cpp -o hello
./hello
g++ -g hello.cpp -o hello
g++ -Wall -Wextra hello.cpp -o hello
g++ -std=c++11 hello.cpp -o hello
g++ -std=c++17 hello.cpp -o hello
g++ -O2 hello.cpp -o hello
g++ main.cpp func.cpp -o app
或分步编译:
g++ -c main.cpp
g++ -c func.cpp
g++ main.o func.o -o app
Makefile 示例:
CXX = g++
CXXFLAGS = -std=c++17 -Wall -g
app: main.o func.o
$(CXX) main.o func.o -o app
main.o: main.cpp
$(CXX) $(CXXFLAGS) -c main.cpp
func.o: func.cpp
$(CXX) $(CXXFLAGS) -c func.cpp
clean:
rm -f *.o app
使用:
make
./app
make clean
可升级到 gcc 7/8/9:
sudo yum install centos-release-scl
sudo yum install devtoolset-9
scl enable devtoolset-9 bash
确认安装:
sudo yum install glibc-devel
gcc:偏向 Cg++:C++ 推荐如果你有具体需求(如 CMake、CLion、动态库、交叉编译、CentOS 版本),可以告诉我,我可以给你更详细的配置方案。