在 CentOS 上部署 C++ 项目,一般流程包括:环境准备 → 编译 → 运行 →(可选)服务化/自动化部署。下面按常见场景给你一个完整说明。
sudo yum update -y
sudo yum install -y gcc gcc-c++ make cmake
如果是较新 CentOS(如 Stream),也可用
dnf:
sudo dnf install -y gcc gcc-c++ make cmake
例如:
sudo yum install -y openssl-devel boost-devel zlib-devel
常用方式:
scpscp -r ./myproject user@ip:/home/user/
git clonegit clone https://github.com/xxx/myproject.git
g++ main.cpp -o app -O2 -pthread
make
mkdir build
cd build
cmake ..
make -j$(nproc)
生成的二进制文件一般在 build/ 或项目根目录。
./app
后台运行:
nohup ./app > app.log 2>&1 &
或指定端口/参数:
./app --port=8080
创建服务文件:
sudo vi /etc/systemd/system/myproject.service
示例:
[Unit]
Description=My C++ Project
After=network.target
[Service]
ExecStart=/home/user/myproject/app
WorkingDirectory=/home/user/myproject
Restart=always
User=user
[Install]
WantedBy=multi-user.target
重载并启动:
sudo systemctl daemon-reload
sudo systemctl start myproject
sudo systemctl enable myproject
查看状态:
systemctl status myproject
ldd app
若显示 not found,安装对应 -devel 包。
可升级 GCC:
sudo yum install -y centos-release-scl
sudo yum install -y devtoolset-11
scl enable devtoolset-11 bash
g++ main.cpp -o app -static
如果你能告诉我:
我可以给你更精确的部署方案。