当前位置: 首页 > news >正文

如何在Ubuntu上安装Cmake

前言

​ 本文主要阐述如何在Ubuntu22.04上面安装cmake,具体可看下面的操作。

正文

一、环境

Ubuntu22.04

cmake-3.31.4.tar.gz

二、步骤

参考这个方案:

【运维】Ubuntu如何安装最新版本的Cmake,编译安装Cmake,直接命令安装Cmake

1、先下载最新的cmake源码:cmake官网

在这里插入图片描述

2、解压:

tar zxvf cmake-3.24.2.tar.gz

3、安装必要的依赖项,例如libssl-dev:

sudo apt-get install libssl-dev

4、切换到解压后的CMake目录

cd cmake-3.24.2/

5、执行bootstrap脚本

sh ./bootstrap

6、如果没问题的话:

在这里插入图片描述

7、使用make命令编译CMake源代码:

make -j

8、安装已编译的CMake:

sudo make install

9、检测是否安装成功:

在这里插入图片描述

三、遇到的问题

1、CMake】第7篇 解决“Could not find OpenSSL. Install an OpenSSL development package”

sudo apt-get install libssl-dev

2、清华镜像下载失败

有可能清华镜像发生更改,可以去这个网站查看最新的镜像:
在这里插入图片描述

修改之前,记得先:

备份原软件源:sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak

然后编辑一下/etc/apt/sources.list这个文件就可以了,将网站里面的东西拷贝进去。

3、bootstrap的含义是啥?

在 Ubuntu 或其他 Linux 系统中,执行 bootstrap 通常是指运行一个脚本(通常名为 bootstrap.sh 或类似名称),用于准备构建或安装项目的环境。具体的作用取决于项目的内容和设计,但以下是 bootstrap 通常涉及的内容和其意义:


a、什么是 bootstrap
  • bootstrap 是一个初始化脚本,通常由项目作者提供,用于自动化配置构建环境的工作。
  • 它通常包含命令来:
    • 安装必要的依赖项。
    • 生成配置文件(如 configure)。
    • 设置构建工具链(如 autotoolscmake)。
    • 初始化项目的环境(如下载子模块或设置路径)。

b、bootstrap 通常用于哪些场景?
  • 自动化构建准备
    例如,下载依赖库、生成 Makefile 或运行 autoreconf
  • 处理项目依赖
    安装项目需要的依赖包或第三方库。
  • 设置环境
    例如,初始化子模块或检查系统的构建工具是否完整。
    在这里插入图片描述
http://www.lryc.cn/news/520860.html

相关文章:

  • 图解Git——分支开发工作流《Pro Git》
  • 没有正确使用HTTP Range Request,导致访问Azure Blob存储的视频没有实现流式播放
  • 回归预测 | MATLAB实RVM相关向量机多输入单输出回归预测
  • 开发人员学习书籍推荐(C#、Python方向)
  • Springboot + vue 小区物业管理系统
  • 基于深度学习的视觉检测小项目(十二) 使用线条边框和渐变颜色美化界面
  • 基于OQuPy的量子编程实例探究:理论、实践与展望
  • 【数据库】二、关系数据库
  • C#类型转换
  • 【Vue】Vue组件--上
  • 21、Transformer Masked loss原理精讲及其PyTorch逐行实现
  • 构建高性能网络服务:从 Socket 原理到 Netty 应用实践
  • Spring Boot教程之五十六:用 Apache Kafka 消费 JSON 消息
  • Elasticsearch ES|QL 地理空间索引加入纽约犯罪地图
  • csp-j知识点:联合(Union)的基本概念
  • docker-compose 方式安装部署confluence
  • 深入理解计算机系统阅读笔记-第十二章
  • 网络原理(九):数据链路层 - 以太网协议 应用层 - DNS 协议
  • rtthread学习笔记系列(4/5/6/7/15/16)
  • 【拒绝算法PUA】3065. 超过阈值的最少操作数 I
  • 今日总结 2025-01-14
  • 关于扫描模型 拓扑 和 传递贴图工作流笔记
  • C#知识|泛型Generic概念与方法
  • centos 8 中安装Docker
  • vscode vue 自动格式化
  • Webpack 5 混淆插件terser-webpack-plugin生命周期作用时机和使用注意事项
  • MQTT(Message Queuing Telemetry Transport)协议
  • 【MySQL学习笔记】MySQL存储过程
  • Vue2+OpenLayers实现折线绘制、起始点标记和轨迹打点的完整功能(提供Gitee源码)
  • 基于Spring Boot的城市垃圾分类管理系统设计与实现(LW+源码+讲解)