【C++】CentOS环境搭建-升级CMAKE

news2024/11/17 22:45:20

【C++】CentOS环境搭建-升级CMAKE

  • CMAKE报错CMake 3.12 or higher is required. You are running version 2.8.12.2
  • 升级步骤
    • 1.移除当前的cmake
    • 2.安装必要的构建工具和库
    • 3.下载最新的cmake源码并解压
    • 5.编译和安装
    • 6.验证安装

CMAKE报错CMake 3.12 or higher is required. You are running version 2.8.12.2

[root@localhost log4cplus-REL_2_0_8]# mkdir build && cd build
[root@localhost build]# cmake ..
-- The C compiler identification is GNU 9.3.1
-- The CXX compiler identification is GNU 9.3.1
-- Check for working C compiler: /opt/rh/devtoolset-9/root/usr/bin/cc
-- Check for working C compiler: /opt/rh/devtoolset-9/root/usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /opt/rh/devtoolset-9/root/usr/bin/c++
-- Check for working CXX compiler: /opt/rh/devtoolset-9/root/usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
CMake Error at CMakeLists.txt:15 (cmake_minimum_required):
  CMake 3.12 or higher is required.  You are running version 2.8.12.2


-- Configuring incomplete, errors occurred!
See also "/root/log4cplus-REL_2_0_8/build/CMakeFiles/CMakeOutput.log".
[root@localhost build]# make
make: *** No targets specified and no makefile found.  Stop.
[root@localhost build]# sudo make install
make: *** No rule to make target `install'.  Stop.
[root@localhost build]# 

升级步骤

1.移除当前的cmake

sudo yum remove cmake

在这里插入图片描述

2.安装必要的构建工具和库

sudo yum groupinstall 'Development Tools'
sudo yum install freetype-devel

在这里插入图片描述
在这里插入图片描述

3.下载最新的cmake源码并解压

官网地址:https://cmake.org/
在这里插入图片描述

wget https://github.com/Kitware/CMake/releases/download/v3.29.3/cmake-3.29.3.tar.gz
tar -zxvf cmake-3.29.3.tar.gz
cd cmake-3.29.3

5.编译和安装

这里编译时间挺久的耐心等待

./bootstrap --prefix=/usr/local -- -DCMAKE_BUILD_TYPE:STRING=Release
make
sudo make install
export PATH=/usr/local/share/cmake-3.29/bin:$PATH

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

6.验证安装

cmake --version

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

hypack如何采集多波束数据?(上)

多波束设备有3种:多波束阵列,比如Seabat T50P;相干声纳,比如EdgeTeck 6205;多个单波束并列,比如Ross Sweep System,见下图。 辅助传感器主要有:罗经(提供航向&#xff09…

Linux 进程间通信 System V系列: 共享内存,信号量,简单介绍消息队列

进程间通信 System V系列: 共享内存,初识信号量 一.共享内存1.引入2.原理3.系统调用接口1.shmget2.shmat和shmdt3.shmctl 4.边写代码边了解共享内存的特性1.ftok形成key,shmget创建与获取共享内存2.shm相关指令3.shmat和shmdt挂接和取消挂接4.shmctl获取共享内存信息,释放共享内…

org.hsqldb.jdbcDriver 类,导致 ClassNotFoundException 异常如何解决?

确保JDBC驱动包存在:检查系统是否已经安装了HSQLDB JDBC驱动。如果没有安装或驱动没有正确放置在类路径中,需要下载并添加它。你可以从 HSQLDB官网 下载JDBC驱动包。 添加JDBC驱动到类路径:将下载的HSQLDB JDBC驱动(通常是一个JA…

【ArcGISProSDK】condition属性

示例 通过caption属性可以看出esri_mapping_openProjectCondition的条件是一个工程被打开 condition的作用 由此可知示例中的Tab实在工程被打开才能使用,否则他禁用显示灰色,在未禁用的时候说明条件满足。 参考文档 insertCondition 元素 (arcgis.com…

西门子PLC定时器使用与疑难杂症

一、简介 S7-200提供了256个定时器,依据分辨率分三种类型:1ms,10ms和100ms;依据功能分为接通延时定时器(TON)、有记忆的接通延时定时器(TONR)和断开延时定时器(TOF)。 接通延时定时…

Promise魔鬼面试题

文章目录 题目解析难点分析分析输出step1step2step3step4step5step6 参考/致谢:渡一袁老师 题目 Promise.resolve().then(() > {console.log(0);return Promise.resolve(4);}).then((res) > {console.log(res);});Promise.resolve().then(() > {console.l…

MFC中关于CMutex类的学习

MFC中关于CMutex类的学习 最近在项目中要实现两个线程之间的同步,MFC中提供了4个类,分别是CMutex(互斥量)、CCriticalSection(临界区)、CEvent(事件对象)、CSemaphore(信号量)。有关这4个类的说明,大家可以参考微软官方文档: CM…

MySQL的表级锁

📝个人主页:五敷有你 🔥系列专栏:面经 ⛺️稳中求进,晒太阳 表级锁 介绍 对于表锁,分为两类: 表共享读锁表独占写锁 语法 1. 加锁:lock tables 表名... read/write 2.…

第十三届蓝桥杯决赛(国赛)真题 Java A 组【原卷】

文章目录 发现宝藏【考生须知】试题 A: 火柴棒数字试题 B: 小蓝与钥匙试题 C: 内存空间试题 D: 斐波那契数组试题 E: 交通信号试题 F: 数组个数试题 G: 六六大顺试题 H : \mathrm{H}: H: 选素数试题 I: 图书借阅试题 J \mathrm{J} J : 括号序列树 发现宝藏 前些天发现了一个…

代码随想录——二叉树的层序遍历Ⅱ(Leetcode107)

题目链接 层序遍历(队列) /*** Definition for a binary tree node.* public class TreeNode {* int val;* TreeNode left;* TreeNode right;* TreeNode() {}* TreeNode(int val) { this.val val; }* TreeNode(int val, Tre…

springboot整合redis多数据源(附带RedisUtil)

单数据源RedisUtil(静态) 单数据源RedisUtil,我这里implements ApplicationContextAware在setApplicationContext注入redisTemplate,工具类可以直接类RedisUtil.StringOps.get()使用 package com.vehicle.manager.core.util;import com.alibaba.fastjson.JSON; import lombok.e…

嵌入式学习70-复习(wireshark使用和http协议)

--------------------------------------------------------------------------------------------------------------------------------- wireshark 1.sudo wireshark 2.选择 any , 3.搜索 http/tcp 54 为 发送的数据包 58 回复的数据包 请求报文 请求报文…

【C++】CentOS环境搭建-安装log4cplus日志组件包及报错解决方案

log4cplus简介 log4cplus是C编写的开源的日志系统,前身是java编写的log4j系统,受Apache Software License保护,作者是Tad E. Smith。 log4cplus具有线程安全、灵活、以及多粒度控制的特点,通过将日志划分优先级使其可以面向程序…

IQOO Neo7/7SE/PAD2解BL+完美root权限+LSPosed框架-可虚拟定位

QOO Neo7/Neo7SE/Pad/Pad2搭配的是天玑8200系列芯片,继810/920以后再次支持解锁BL,这给我们的玩机带来了很多可能。解锁BL有什么用途呢?最常见的就是获取root权限,刷入各种各种的magisk模块,使用自己喜欢的插件等&…

【初阶数据结构】顺序表OJ题讲解

前言 📚作者简介:爱编程的小马,正在学习C/C,Linux及MySQL。 📚本文收录与初阶数据结构系列,本专栏主要是针对时间、空间复杂度,顺序表和链表、栈和队列、二叉树以及各类排序算法,持…

macOS Sonoma 无法打开分段式Dmg文件的解决办法

在macOS Sonoma 14.X及更高版本的系统中,用户可能会遇到一个棘手的问题:无法直接打开“分段式”DMG(磁盘映像)安装包文件。这种情况通常发生在尝试安装一些大型软件或游戏时,尤其是那些因为文件体积巨大而采用分段压缩…

(Java)心得:LeetCode——15.三数之和

一、原题 给你一个整数数组 nums ,判断是否存在三元组 [nums[i], nums[j], nums[k]] 满足 i ! j、i ! k 且 j ! k ,同时还满足 nums[i] nums[j] nums[k] 0 。请你返回所有和为 0 且不重复的三元组。 注意:答案中不可以包含重复的三元组。…

带有-i选项的sed命令在Linux上执行成功,但在MacOS上失败了

问题: 我已经成功地使用以下 sed 命令在Linux中搜索/替换文本: sed -i s/old_string/new_string/g /path/to/file然而,当我在Mac OS X上尝试时,我得到: command i expects \ followed by text我以为我的Mac运行的是…

Reactor Netty UDP 客户器端-响应式编程-017

🤗 ApiHug {Postman|Swagger|Api...} 快↑ 准√ 省↓ GitHub - apihug/apihug.com: All abou the Apihug apihug.com: 有爱,有温度,有质量,有信任ApiHug - API design Copilot - IntelliJ IDEs Plugin | Marketplace The Nex…

Jenkins流水线部署Maven项目

使用Jenkins的流水线功能,构建部署Java Maven项目,步骤很简单但是不少细节需要注意。 一、安装 Jenkins的安装步骤和流程就不具体描述,这里主要介绍一下安装时要注意的几个问题。 1、Jenkins尽量安装最新的几个版本,否则安装完成…