Ubuntu中 cmake 版本升级,解决CMake 3.10 or higher is required

本文介绍了在Ubuntu上解决CMake版本过低问题的方法,通过卸载旧版、下载源码、编译及安装新版本CMake3.10,以满足Pangolin库的依赖需求。过程中提到了可能遇到的错误和解决方案,并简单讲解了`apt-get`的几个命令用法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Ubuntu中 cmake 版本升级,解决CMake 3.10 or higher is required

写在前面

  • 今天在跑 SLAM十三讲 第三章的 visualizeGeometry 配套代码时,需要安装 Pangolin 库,下载源码编译时报错 CMake 3.10 or higher is required,记录一下解决方法。

解决方法

  • 卸载原有的cmake (注意:实践证明可以不用删除原有cmake)
  • 如需卸载考虑在源码目录下使用如下指令
sudo make uninstall
  • 若当前版本cmake未提供 uninstall 指令,可以参考 cmake相关:sudo make install后的卸载
  • 进入 /usr/local/bin 目录(cmake 默认安装路径)
  • 下载源码压缩包并解压(需要其他版本只需修改相应版本即可)
wget https://github.com/Kitware/CMake/releases/download/v3.10.0/cmake-3.10.0.tar.gz
tar -zxvf cmake-3.10.0.tar.gz
  • 如果出现无法下载可以浏览器访问网址直接下载
  • 安装相关依赖
sudo apt install libssl-dev build-essential
  • 安装
cd cmake-3.10.0

sudo ./bootstrap 
sudo make 
sudo make install

# 一步到位
sudo ./bootstrap && sudo make && sudo make install
  • 理论上最后会自动替换位于 /usr/local/bin 目录下的 cmake 可执行文件
  • 使用如下命令检查版本
cmake --version
  • 此外我在测试中遇到在 /usr/bin 目录下执行上述命令时出现如下报错:
CMake Error: Could not find CMAKE_ROOT !!!
CMake has most likely not been installed correctly.
Modules directory not found in
/usr/share/cmake-3.10
cmake version 3.10.0

CMake suite maintained and supported by Kitware (kitware.com/cmake).
  • 该报错尚未解决,但在其他位置均正常使用

写在最后

简单介绍三个apt-get命令
  • remove – 卸载软件包
  • autoremove – 卸载所有自动安装且不再使用的软件包,用于删除为满足其他包的依赖关系而自动安装的包,现在不再需要,因为依赖关系发生变化或需要它们的包同时被删除。在使用此命令时会导致对应的删除包的依赖一并删除。
  • purge – 卸载并清除软件包的配置
  • 任何文章中出现 apt autoremove 指令请谨慎使用,若无准确把握请不要尝试此命令,有可能导致系统崩溃等灾难性后果
附加内容

最新修订日期:3/18/2023
修正内容:
删除卸载原有的cmake部分代码
对于文章中压缩包存放路径进行了修改

致歉&鸣谢
对当初写文章时未仔细研究 autoremove 和 cmake 安装而导致读者在使用此文章时出现的种种问题与困惑致以歉意
感谢 @阿瓦达啃瓜@一只小獭獭 对文章问题的指出

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

鞠杉

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值