Windows安装Rust版本GDAL

前言

笔者想安装GDAL,这是一个开源的地理数据库,

笔者到处搜索,最后看到这位大佬写的这篇文章,终于成功了。

aliothor/Windows-Install-Rust-Gdal-Tutorial: Windows Install Rust Version Gdal Stepshttps://github.com/aliothor/Windows-Install-Rust-Gdal-Tutorial

Windows安装Rust版本GDAL - 知乎https://zhuanlan.zhihu.com/p/655508921

正文

首先,需要安装Rust的环境,如下参考

安装 Rust - Rust 程序设计语言https://www.rust-lang.org/zh-CN/tools/install安装 - Cargo 手册 中文版https://rustwiki.org/zh-CN/cargo/getting-started/installation.html安装完成后

下载GDAL

进入下面的网址

GISInternals Support Sitehttps://www.gisinternals.com/release.php截止到目前是3.10.0,笔者下载如下两个压缩报

下载完成后,解压到同一个目录下

设置环境变量

打开环境变量,在path中

设置如下两个变量,

复制代码
C:\OSGeo4W\bin\gdal\apps
C:\OSGeo4W

设置GDAL_LIB_DIR

复制代码
C:\OSGeo4W\lib

设置PKG_CONFIG_PATH

复制代码
C:\OSGeo4W

下载window pkg-config

下载并安装choco

Releases · chocolatey/chocohttps://github.com/chocolatey/choco/releases管理员的权限下,运行

复制代码
choco install pkgconfiglite

运行后, 笔者安装在C:\ProgramData\chocolatey\lib目录下的

查看gdal版本

笔者是3.10.0

创建gdal.pc文件

在解压目录下,笔者是C:/OSGeo4W

写下如下内容

复制代码
name=gdal
prefix=/usr
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir=${exec_prefix}/include
datadir=${prefix}/share/${name}

Name: lib${name}
Description: Geospatial Data Abstraction Library
Version: 3.10.0
Libs: -L${libdir} -l${name}
Cflags: -I${includedir}/${name}

版本不同,Version不同。

简单使用

经过前面这些操作,就可以使用了

创建一个项目,添加依赖gdal依赖

georust/gdal: Rust bindings for GDALhttps://github.com/georust/gdal

通过下面的网址,随便下载一个地方的geojson

DataV.GeoAtlas地理小工具系列https://datav.aliyun.com/portal/school/atlas/area_selector下载完成后,运行如下代码

复制代码
use gdal::Dataset;

fn main() {
    let ds=Dataset::open("成都市.geojson").unwrap();
    println!("Driver: {}", ds.driver().long_name());
}

结果如下

哈哈哈哈哈哈

相关推荐
Thneonl1 天前
一个人从 Rust 内核做到 React 前端:我做了一个云原生 SRE 巡检图谱桌面工具
rust
程序员爱钓鱼1 天前
Rust Struct结构体详解:定义自己的复杂数据类型
后端·面试·rust
苏灿烤鱼1 天前
公司**不可计算,就自己做操作系统
rust·typescript·agent
nnerddboy1 天前
Rust教程04:引用、借用与切片
开发语言·后端·rust
咸甜适中1 天前
rust语言AI编程学习笔记(五)clap命令行参数解析
学习·rust·ai编程
梦醒沉醉1 天前
19、Rust程序设计语言——高级特性
rust
SomeB1oody1 天前
【RustyML入门】2.13. 孤立森林
开发语言·后端·机器学习·rust·教程
DLYSB_2 天前
Kafka 消费倾斜死锁与 Partition 掉队:我用 Rust 写了个“数据管道物理哨兵”,比 Grafana 报警快了 18 秒
rust·kafka·grafana·报警灯
SomeB1oody2 天前
【RustyML入门】3.8. 正则化与归一化层
开发语言·后端·机器学习·rust·教程
SomeB1oody2 天前
【RustyML入门】3.7. 循环层
开发语言·后端·机器学习·rust·教程