Ubuntu升级Cmake的正确方式
某些软件包编译时需要高版本的Cmake,因此需要升级Cmake。 不能使用
sudo apt-get remove cmake卸载低版本cmake后再重装高版本,这样做会导致之前编译和安装的很多库一起被卸载!!!
正确步骤是:
-
去https://cmake.org/files/下载所需版本的源码。也可以使用wget下载,例如:
wget https://cmake.org/files/v3.22/cmake-3.22.1.tar.gz -
解压:
tar -xvzf cmake-3.22.1.tar.gz -
进入解压目录,配置成功之后显示:
CMake has bootstrapped. Now run make.chmod 777 ./configure ./configure -
配置完成后,编译:
make -
编译完成后,安装:
sudo make install -
最后使用新安装的cmake替换旧版本,其中
/usr/local/bin/cmake为新安装的cmake目录。sudo update-alternatives --install /usr/bin/cmake cmake /usr/local/bin/cmake 1 --force -
最后测试cmake版本:
cmake --version # cmake version 3.22.1 # CMake suite maintained and supported by Kitware (kitware.com/cmake). -
原理
安装之前:

安装之后:
可以看到
/usr/bin目录下的cmake成为了一个软链接,指向了/etc/alternatives/cmake,而后者由指向了/usr/local/bin/cmake,也就是我们安装的版本。其实就是通过软链接的方式将原始的程序“替换”了。关于
update-alternatives的详细介绍请参考:[1] https://blog.csdn.net/JasonDing1354/article/details/50470109

浙公网安备 33010602011771号