centos编译升级cmake,痛苦的Linux小白

环境

root 用户


下载

cmake官网下载地址:https://cmake.org/download/

在这里插入图片描述

获取下载地址,右击cmake-3.27.4.tar.gz

在这里插入图片描述

命令行输入链接地址,下载

wget https://github.com/Kitware/CMake/releases/download/v3.27.4/cmake-3.27.4.tar.gz
解压
tar -zxvf cmake-3.27.4.tar.gz

配置编译环境
cd cmake-3.27.4
./configure --prefix=/usr/local/cmake-3.27.4
配置失败,could not find openssl…

在这里插入图片描述

原因:缺少 openssl 的编译依赖

解决:安装openssl

yum -y install openssl openssl-devel

编译
make && make install

查看cmake版本
cmake --version

发现还是原来的版本…,用sudo cmake --version则是最新安装的版本

cmake --version和sudo cmake --version版本不一致

对于不慎了解Linux系统的,解决问题是痛苦的…

which cmake

which cmake, 发现当前cmake的路径为 /usr/local/bin,而我安装的路径为 /usr/local/cmake-3.27.4,软连接的路径为/usr/bin/

于是,添加系统环境变量…

可以在 /etc/profile文件中添加,但是Linux推荐在 /etc/profile.d/路径中添加脚本

于是,创建了一个cmake.sh的脚本

export CMAKE_HOME=/usr/local/cmake-3.27.14
export PATH=$PATH:$CMAKE_HOME/bin

创建完脚本执行source命令

source /etc/profile

操作完成后,执行cmake --version 发现还是原来的旧版本🤬

于是,env,查看系统环境变量,发现已经添加了,为什么还是不行???

突然想到,环境变量查找是有顺序的,前边的路径中找到后边的就不再查找了

在这里插入图片描述

旧版本的cmake在/usr/local/bin的路径中,而我新添加的在/usr/local/cmake-3.27.4的路径

于是调整了环境变量的顺序,新版本的路径放在环境变量的最前边

export CMAKE\_HOME=/usr/local/cmake-3.27.14 
export PATH=\$CMAKE\_HOME/bin:\$PATH

别忘记了source

cmake --version,铛铛铛…,大功告成😁


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/107642.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Docker基础-cgroup

cgroup cgroup什么是 cgroups为什么使用 cgroupscgroups 的用途cgroups 可以控制的子系统基础命令pidstatstress cgroup试验cgroups 信息查看cgroups 版本查看cgroups 子系统查看cgroups 挂载信息查看查看一个进程上的 cgroup 限制 使用 cgroups 对内存进行控制使用 cgroups 对…

新加坡市场最全开发攻略

作为东盟经济的“发动机”!新加坡是继纽约、伦敦、香港之后的第四大国际金融中心。据《2022年全球竞争力》报告显示,新加坡是亚洲地区排名最高的,位列全球三甲之一。 同时,新加坡作为东盟(ASEAN)的核心成员国,还是世贸…

算法:经典贪心算法--跳一跳[2]

1、题目: 给定一个长度为 n 的 0 索引整数数组 nums。初始位置为 nums[0]。 每个元素 nums[i] 表示从索引 i 向前跳转的最大长度。换句话说,如果你在 nums[i] 处,你可以跳转到任意 nums[i j] 处: 返回到达 nums[n - 1] 的最小跳跃次数。生…

Hugging News #0904: 登陆 AWS Marketplace

每一周,我们的同事都会向社区的成员们发布一些关于 Hugging Face 相关的更新,包括我们的产品和平台更新、社区活动、学习资源和内容更新、开源库和模型更新等,我们将其称之为「Hugging News」。本期 Hugging News 有哪些有趣的消息&#xff0…

Android离线文字识别-tesseract4android调用

Android在线文字识别可以调阿里云的接口Android文字识别-阿里云OCR调用__花花的博客-CSDN博客 需要离线文字识别的话,可以调tesseract4android。个人测试效果不是特别理想,但是速度真的很快,VIVO S10后摄照片,80ms内识别完成。现…

王道考研计算机网络

文章目录 计算机网络体系结构计算机网络概述计算机网络的性能指标 计算机网络体系结构与参考模型错题 物理层通信基础基础概念奈奎斯特定理和香农定理编码与调制电路交换、报文交换和分组交换数据报与虚电路 传输介质物理层设备错题 数据链路层数据链路层的功能组帧差错控制检错…

二进制安全虚拟机Protostar靶场(2)基础知识讲解,栈溢出覆盖变量 Stack One,Stack Two

前言 Protostar靶场的安装和一些二进制安全的基础介绍在前文已经介绍过了,这里是文章链接 https://blog.csdn.net/qq_45894840/article/details/129490504?spm1001.2014.3001.5501什么是缓冲区溢出 当系统向缓冲区写入的数据多于它可以容纳的数据时,…

从0到1理解ChatGPT原理

目录 写在前面 1.Tansformer架构模型 2.ChatGPT原理 3.提示学习与大模型能力的涌现 3.1提示学习 3.2上下文学习 3.3思维链 4.行业参考建议 4.1拥抱变化 4.2定位清晰 4.3合规可控 4.4经验沉淀 机械工业出版社京东自购链接 写在前面 2022年11月30日,ChatG…

【C语言】库宏offsetof

一.offsetof简介 因此,宏offsetof的作用是: 当你传入结构体的类型及其成员时,它会返回该成员在结构体中的偏移量. 二.offsetof的使用 如下,我们使用offsetof打印一下结构体foo中,成员a,成员b及成员c相对于首地址的偏移量分别是多少: #include <stdio.h> #include …

Vue框架--收集表单数据

下面我们介绍Vue收集表单中的数据。这一节比较重要&#xff0c;需要大家好好听&#xff0c;因为后面数据交互的时候使用的特别的多。

Redis新篇一:认识Redis

首先&#xff0c;很抱歉小伙伴们&#xff0c;前段时间一直都没有更新&#xff0c;我很抱歉&#xff0c;现在开始持续更新Redis相关内容啦&#xff01;有需要的小伙伴们可以持续关注一下小博主的新篇哦~ 希望对你们有帮助&#xff01; 作者&#xff1a;爱撸猫的程序员 博客地址…

Android kotlin开源项目-功能标题目录

目录 一、BRVAH二、开源项目1、RV列表动效&#xff08;标题目录&#xff09;2、拖拽与侧滑&#xff08;标题目录&#xff09;3、数据库&#xff08;标题目录&#xff09;4、树形图(多级菜单)&#xff08;标题目录&#xff09;5、轮播图与头条&#xff08;标题目录&#xff09;6…