gdal3.5.0升级及安装cmake

news2024/11/24 19:41:55

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 前言
  • 一、pandas是什么?
  • 二、使用步骤
    • 1.引入库
    • 2.读入数据
  • 总结


前言

本文主要是将gdal旧版本v3.2.1升级到v3.5.0,解决升级过程中的问题。


一、升级gdal

首先对于旧版本gdal3.2.1来说,gdal3.0+的版本还需依赖PROJ库,而且PROJ库必须是6.0+版本,proj的编译需要sqlite3库。

关于这个3.2.1版本已经做好了

将gdal版本换成3.5.0后,

cd gdal

执行./configure,报错build.sh: line 43: ./configure: No such file or directory

不知道怎么处理,一直在百度在调试,甚至因为百度到的某个解决方案,还升级了cmake

最后看了GitHub - OSGeo/gdal at v3.5.0

源码中阅读README文件,其中

How to contribute 【如何贡献】

See CONTRIBUTING.md

点击CONTRIBUTING.md

查看Setting development environment (Unix)

Install all required development packages: GNU make, g++, ...

Build:

./autogen.sh
./configure --with-python [other options]
make -j8 -s
cd apps; make -s test_ogrsf; cd ..

然后字啊本地服务器编译,可以正常执行./configure指令。

二、升级cmake

1、流程

查看旧版:which cmake

【/usr/bin/cmake】

进入旧版:cd /usr/bin/cmake

移除旧版:sudo rm cmake

下载:sudo wget https://cmake.org/files/v3.9/cmake-3.9.2.tar.gz

解压:sudo tar -zxvf cmake-3.9.2.tar.gz

安装cmake

执行sudo ./configure

sudo make

sudo make install

cmake --version

安装成功。

#链接一下到/usr/bin下,不然会cmake编译出错

which cmake #发现新安装的cmake默认到/usr/local/bin/cmake

sudo ln -s /usr/local/bin/cmake /usr/bin

链接成功。 

2、报错处理

1.1 ./configure: command not found

报错:sudo: ./configure: command not found

解决办法:cd /cmake-3.9.2,没进入解压安装文件夹

1.2 `GLIBCXX_3.4.26' not found

报错:【/usr/bin/cmake-3.9.2/Bootstrap.cmk/cmake: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /usr/bin/cmake-3.9.2/Bootstrap.cmk/cmake)】

通过这个报错可以看出,报错提示缺少 GLIBCXX_3.4.26,也就是缺少 libstdc++.so.6.0.26

(报错提示缺少 GLIBCXX_3.4.22,也就是缺少 libstdc++.so.6.0.22 )

通过以下指令可以查看当前的系统版本:

strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBCXX

通过上图可以发现,确实缺少 GLIBCXX_3.4.26

解决这个问题:

1、下载libstdc++.so.6.0.26 :
通过链接 http://www.vuln.cn/wp-content/uploads/2019/08/libstdc.so_.6.0.26.zip 直接下载。

2、解压,得到文件 libstdc++.so.6.0.26,比如解压到了 ~/Download/ 下;
移动到文件夹下 /usr/lib/x86_64-linux-gnu/
sudo mv libstdc++.so.6.0.26  /usr/lib/x86_64-linux-gnu/

3、重新建立软连接
cd /usr/lib/x86_64-linux-gnu/
sudo rm libstdc++.so.6   # 移除掉原来的软连接文件
ln libstdc++.so.6.0.26 libstdc++.so.6

4、通过以下指令可以查看当前的系统版本:

strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBCXX

正常

通过上图可以发现,现在已经安装 GLIBCXX_3.4.26 成功


总结

提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。

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

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

相关文章

智慧社区大屏:连接社区生活的数字桥梁

随着科技的不断发展,智慧社区已经不再只是未来的概念,它已经在我们的眼前悄然崭露头角。智慧社区是一种基于数字技术的社区管理和生活方式,旨在提高社区的安全性、便利性和生活质量。而在这个数字化的社区中,智慧社区大屏起到了连…

竞赛 深度学习疲劳检测 驾驶行为检测 - python opencv cnn

文章目录 0 前言1 课题背景2 相关技术2.1 Dlib人脸识别库2.2 疲劳检测算法2.3 YOLOV5算法 3 效果展示3.1 眨眼3.2 打哈欠3.3 使用手机检测3.4 抽烟检测3.5 喝水检测 4 最后 0 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 **基于深度学习加…

VMware17安装教程

1、双击安装包 2、等待进度条走满 3、点击下一步 4、点击我接受 下一步 5、修改安装目录 添加path路径 下一步 6、取消用户体验设置 下一步 7、点击下一步 8、 点击安装 9、等待进度条走满 10、点击许可证 输入秘钥 11、 点击输入秘钥 12、 点击完成 完成安装 此时已经完成了安…

Nat. Med. | 基于遗传学原发部位未知癌症的分类和治疗反应预测

今天为大家介绍的是来自Alexander Gusev团队的一篇论文。原发部位未知癌症(Cancer of unknown primary,CUP)是一种无法追溯到其原发部位的癌症,占所有癌症的3-5%。CUP缺乏已建立的靶向治疗方法,导致普遍预后…

【C语言】函数的系统化精讲(三)

文章目录 一、递归举例二、递归举例2.1求n的阶乘2.2 顺序打印⼀个整数的每⼀位 三、递归与迭代3.1递归的思考3.2求第n个斐波那契数 总结 一、递归举例 .通过上回(【C语言】函数的系统化精讲(二))我们了解到递归的限制条件&#x…

企业如何落地搭建商业智能BI系统

随着新一代信息化、数字化技术的应用,引发了新一轮的科技革命,现代化社会和数字化的联系越来越紧密,数据也变成继土地、劳动力、资本、技术之后的第五大生产要素,这一切都表明世界已经找准未来方向,前沿科技也与落地并…

Confluence 恢复的时候数据版本问题

如果 Confluence 恢复的时候提示数据库的版本不正确或者有问题。 如下图所示: 只要版本差不太多,你可以通过数据库来自动调整版本信息。 有关 Confluence 安装的数据库表位置在:CONFVERSION 这个表。 把这个表中的数据更新下就可以了。 当…

网络安全深入学习第八课——反向代理(工具:frp)

文章目录 一、实验环境二、实验要求三、开始模拟1、攻击机配置frp文件2、攻击拿下跳板机,并且上传frpc.ini、frpc.exe、frpc_full.ini文件3、把frps.ini、、frps.exe、frps_full.ini文件放到VPS主机上4、VPS机开启frp5、跳板机开启frp6、验证 一、实验环境 攻击机&…

C++:STL第一篇vector

目录 1.vector 的介绍及使用 1.1 vector的介绍 1.2 vector的使用 1.2.1 vector的定义 1.2.2 vector iterator (迭代器)的使用 1.2.3 vector空间增长问题 1.2.4 vector的增删改查 1.2.5 vector 迭代器失效问题。(重点) 2.vector 深度刨析及模拟实…

git增加右键菜单

有次不小心清理系统垃圾,把git右击菜单搞没了,下面是恢复方法 将下面代码存为.reg文件,双击后导出生效,注意,你安装的git必须是默认C盘的,如果换了地方要改下面注册表文件中相关的位置 Windows Registry …

elform-item动态prop

先来看看我这个变态而又复杂的需求! 目前自定义表单的前端开发越来越热,开发人员封装好成熟的组件,用户直接拖动生成自己的页面!这样的特点就是: 页面中显示的东西,完全是自定义组合的而不是固定的&#…

在 “219.**** 找不到用于监控项 key“agent.hostname“ 的主机接口.

细节 无法添加主机 在 "219.151" 找不到用于监控项 key"agent.hostname" 的主机接口.z 这个时候要改一下 方式:

区块链导论:数字经济需要培养多学科交叉综合人才

日前,在第三届“一带一路”国际合作高峰论坛数字经济高级别论坛上,香港科技大学校长叶玉如提出了一个引人深思的观点:“数字经济是多个学科领域交叉融合,我们需要的人才既要懂得经济学,也要理解人工智能、大数据、区块…

STM32Cube +VSCode开发环境搭建

STM32Cube VSCode开发环境搭建 0.前言一、各种方式对比1.STM32CubeMX CLion2.STM32CubeIDE VSCode STM32 VSCode Extension3.VSCode EIDE插件 二、STM32CubeIDE VSCode STM32 VSCode Extension环境搭建1.需要安装的软件2.相关配置3.编译测试 三、总结 0.前言 工欲善其事&…

视频批量剪辑技巧:AI智剪,智能技术让视频剪辑更简单

在视频制作过程中,剪辑是一项必不可少的任务。然而,对于许多非专业人士来说,视频剪辑却是一项令人望而生畏的任务。需要耗费大量的时间和精力,而且还需要一定的技术和经验。但是,随着人工智能技术的不断发展&#xff0…

yolov5的qat量化

前两篇文章讲解了yolov5的敏感层分析及ptq量化流程,本篇文章在前两篇文章的基础上,继续讲解yolov5的qat量化流程。 ptq和qat的区别如下所示: qat量化流程如下所示: 首先在数据集上以FP32精度进行模型训练,得到训练好的baseline模型;在baseline模型中插入伪量化节点,进行…

时序教程六部曲:Kaggle 时间序列实战项目

在https://kaggle.com/learn页面Kaggle官方提供了学习实战项目,最近更新了Time Series时间序列的知识点。 Time Series 课程包括如下章节: Linear Regression With Time Series Trend Seasonality Time Series as Features Hybrid Models Forecast…

C++命名空间知识点总结

引入 在 C 应用程序中。可能会写一个名为 xyz() 的函数,在另一个可用的库中也存在一个相同的函数 xyz()。这样,编译器就无法判断所使用的是哪一个 xyz() 函数。 因此,引入了命名空间这个概念,专门用于解决上面的问题&#xff0c…

LibreOJ - 2874 历史研究 (回滚莫队)

回滚莫队就是在基础莫队的前提下,用更多的增加操作代替了减操作。 分成两种情况 1、一个询问的整个区间都在一个块儿里;这种情况直接暴力求即可,因为在一个块儿里,时间复杂度不会高。 2、一个询问的整个区间不在一个块儿里&#…

【Shell脚本6】Shell 运算符

Shell 基本运算符 Shell 和其他编程语言一样,支持多种运算符,包括: 算术运算符关系运算符布尔运算符逻辑运算符字符串运算符文件测试运算符 原生bash不支持简单的数学运算,但是可以通过其他命令来实现,例如 awk 和 …