以下是在CentOS系统上升级CMake到3.5.1的详细步骤:
Contents
方法二:直接使用预编译包
# 下载预编译二进制
wget https://cmake.org/files/v3.5/cmake-3.5.1-Linux-x86_64.tar.gz
tar zxvf cmake-3.5.1-Linux-x86_64.tar.gz -C /usr/local/
mv /usr/local/cmake-3.5.1-Linux-x86_64 /usr/local/cmake-3.5.1
# 设置环境变量
echo 'export PATH=/usr/local/cmake-3.5.1/bin:$PATH' >> /etc/profile
source /etc/profile
新旧版本共存配置
# 创建版本切换脚本
cat > /usr/bin/cmake-select <<EOF
#!/bin/bash
if [ "$1" == "3.5" ]; then
export PATH=/usr/local/cmake-3.5.1/bin:$PATH
elif [ "$1" == "system" ]; then
export PATH=/usr/bin:$PATH
fi
echo "当前CMake版本:"
cmake --version | head -n1
EOF
# 赋予执行权限
chmod +x /usr/bin/cmake-select
# 使用示例:
cmake-select 3.5 # 切换到3.5.1版本
cmake-select system # 切换回系统默认版本
版本对比说明
特性 | 系统自带版本(2.8.x) | 3.5.1版本 |
---|---|---|
C++标准支持 | 仅C++11基础 | 完整C++11/14支持 |
Ninja生成器 | ❌ 不支持 | ✔️ 支持 |
并行编译控制 | 基础功能 | 增强的-J参数 |
内存占用 | 约80MB | 约60MB |
注意事项
- 升级后需重新编译之前用旧版CMake构建的项目
- 如果使用
/usr/local
路径安装,不会覆盖系统自带版本 - 建议在编译关键项目时指定完整路径:
/usr/local/cmake-3.5.1/bin/cmake ..