centos7升级或者安装高版本Cmake

896 阅读2分钟

centos7升级或者安装高版本Cmake

目录

  • 目录
  • 编译信息
  • 说明
  • 环境
  • 下载解压
  • 文件结构
  • 卸载
  • 安装
  • 是否安装成功

编译信息

项目:编译

作者:xzf

创建时间:2021/10/08

更新时间:2021/10/08

说明

cmake升级或者安装。centos系统安装的cmake只有3.3.2版本,但是想要更新的版本于是升级到 3.27.0 版本。

环境

系统:Linux localhost.localdomain 3.10.0-957.el7.x86_64 #1 SMP Thu Nov 8 23:39:32 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

cmake版本: 3.27.0

下载解压

#下载
wget https://cmake.org/files/v3.27/cmake-3.27.0-rc2-linux-x86_64.tar.gz
#解压
tar -xvf https://cmake.org/files/v3.27/cmake-3.27.0-rc2-linux-x86_64.tar.gz

文件结构

.
├── bin
│   ├── ccmake
│   ├── cmake
│   ├── cmake-gui
│   ├── cpack
│   └── ctest
├── doc
│   └── cmake
├── man
│   ├── man1
│   └── man7
└── share
    ├── aclocal
    ├── applications
    ├── bash-completion
    ├── cmake-3.27
    ├── emacs
    ├── icons
    ├── mime
    └── vim

记录小知识点:tree的用法

#一级树
tree -L 1
#二级树
tree -L 1

卸载

方法一

一般使用

sudo yum autoremove cmake
#(通常没用,会报)
#Loaded plugins: fastestmirror, langpacks
#No Match for argument: cmake
#No Packages marked for removal

方法二

所以需要到安装目录下把原有的cmake相关的文件夹直接删掉。(或者直接安装会直接替换掉,但可能存在卸载不干净的问题)

一般软件具有四个文文件夹参考上面文件结构

安装目录:会有所不同,以bin为例

#路径一:系统目录
#usr/bin
#路径二:本地目录
#usr/local/bin

本机环境就安装在usr/local/bin上面

a、根据文件结构二级目录,把usr/local/bincmake相关的都删掉即可。(注意旧版本可能没有ccmake、cmake-gui删掉其他三个即可。)或者安装时直接替换也可以。

b、根据文件结构二级目录,把usr/local/doccmake文件夹删掉。

c、根据文件结构二级目录,把usr/local/share相关文件夹删掉。(注意旧版本可能那么多文件)

d、把usr/local/shareman相关文件夹删掉。man不是单独目录,而是在share下。

安装

根据卸载的方法,把解压后的文件对应复制到相应位置即可。

对应脚本,不应该直接使用,而是根据版本调整。

#!/bin/bash
echo "start copy"
echo "copy bin"
cp -r bin/* /usr/local/bin/
echo "copy doc"
cp -r doc/* /usr/local/doc/
echo "copy share"
cp -r share/* /usr/local/share/
echo "copy man"
cp -r man /usr/local/share/
echo "stop copy"

把上述脚本命名为install.sh并放到cmake-3.27.0-rc2-linux-x86_64文件夹里

#赋予权限
chmod +x install.sh
#执行脚本
./install.sh

是否安装成功

#输入版本
cmake -version
#提示以下结果就已安装成功
cmake version 3.27.0-rc2
CMake suite maintained and supported by Kitware (kitware.com/cmake).