温馨提示×

centos c++工程怎么配置

小樊
37
2026-10-11 21:08:12
栏目: 编程语言

在 CentOS 上配置一个 C++ 工程,通常可以按“编译器 → 构建工具 → 工程结构 → 依赖管理 → 运行调试”这条线来走。下面给你一个从零开始、可落地的配置方案,适用于大多数 C++ 项目。


一、基础环境准备(CentOS)

1. 安装 GCC / G++

sudo yum install -y gcc gcc-c++ make

查看版本:

g++ --version

CentOS 7 默认是 gcc 4.8
如需 C++17/20,建议安装 devtoolset

sudo yum install -y centos-release-scl
sudo yum install -y devtoolset-11
scl enable devtoolset-11 bash

二、最简单的 C++ 工程(手动编译)

目录结构

project/
├── main.cpp
├── math/
│   ├── add.cpp
│   └── add.h

编译

g++ main.cpp math/add.cpp -o app

运行

./app

三、使用 Makefile(推荐入门)

Makefile 示例

CXX = g++
CXXFLAGS = -std=c++17 -O2 -Wall

SRC = main.cpp math/add.cpp
TARGET = app

$(TARGET): $(SRC)
	$(CXX) $(CXXFLAGS) $(SRC) -o $(TARGET)

clean:
	rm -f $(TARGET)

使用

make
./app
make clean

四、使用 CMake(强烈推荐)

目录结构

project/
├── CMakeLists.txt
├── main.cpp
├── math/
│   ├── add.cpp
│   └── add.h

CMakeLists.txt

cmake_minimum_required(VERSION 3.10)
project(demo CXX)

set(CMAKE_CXX_STANDARD 17)

add_executable(app
    main.cpp
    math/add.cpp
)

编译

mkdir build
cd build
cmake ..
make

五、第三方库管理(CentOS)

1. 系统库(yum)

sudo yum install -y boost-devel openssl-devel

CMake 中:

find_package(Boost REQUIRED)
target_link_libraries(app Boost::boost)

2. 手动库(如 json / spdlog)

git clone https://github.com/gabime/spdlog.git

CMake:

add_subdirectory(spdlog)
target_link_libraries(app spdlog)

六、VSCode + CentOS(远程开发)

  1. 安装 Remote - SSH
  2. 连接 CentOS
  3. 安装 C++ 插件
  4. 配置:
    • tasks.json(build)
    • launch.json(debug)

七、调试(GDB)

g++ -g main.cpp -o app
gdb ./app

常用:

break main
run
next
print x

八、常见坑(CentOS 特有)

问题 解决
gcc 太老 用 devtoolset
找不到头文件 -I 或 include_directories()
链接失败 -lxxx 顺序问题
动态库找不到 ldconfig

九、一个“标准 C++ 工程模板”

project/
├── CMakeLists.txt
├── include/
├── src/
├── third_party/
├── build/
└── tests/

如果你愿意,可以告诉我:

  • ✅ CentOS 版本(7 / 8 / Stream)
  • ✅ 项目规模(小工具 / 服务端 / 库)
  • ✅ 是否用 CMake / Make / Bazel
  • ✅ 是否需要网络 / 多线程 / 数据库

我可以直接给你 一套可复制的工程模板。

0 踩