参考
https://zhuanlan.zhihu.com/p/517684150
https://blog.csdn.net/weishaodong/article/details/123310029
由于需要使用到python的 gdal 3.4.2 版本, 且python的gdal依赖对应版本的 libgdal-dev, 安装过程较为复杂, 故记录下来.
正常安装流程
先安装libgdal-dev
sudo apt-get install libgdal-dev
添加环境变量
export CPLUS_INCLUDE_PATH=/usr/include/gdal
export C_INCLUDE_PATH=/usr/include/gdal
记录版本
gdal-config --version
我这里的版本是3.0.4, 因此只能使用python安装3.0.4的gdal
pip install gdal==3.0.4
如果不先安装对应版本的libgdal-dev, 这里会报很长一段错误
# 在python下运行
from osgeo import gdal
gdal.__version__ # 3.0.4
但是这样只能安装3.0.4的版本, 想要更高级的版本就需要使用其他办法了, 因为目前为止(2022年9月15日)apt里最高只有3.0.4版本的libgdal-dev
手动安装特定版本
安装 libgdal-dev
该部分主要参考
https://blog.csdn.net/weishaodong/article/details/123310029
在github下载对应版本: https://github.com/OSGeo/gdal/releases
我这下载的是3.4.2的

解压
tar -zxvf gdal-3.4.2.tar.gz
cd gdal-3.4.2
编译
./configure
make -j4
sudo make install
- 若
./configure报错configure: error: PROJ 6 symbols not found则安装最新的libproj-dev。 - 若编译过程中还有大量库缺失的错误, 建议先用apt安装
libgdal-dev, 待其将所需依赖安装好后, 卸载libgdal-dev再编译。
做一些必要的链接
sudo ln -s /usr/local/lib/libgdal.so.30.0.2 /usr/lib/libgdal.so
sudo ln -s /usr/local/lib/libgdal.so.30 /usr/lib/libgdal.so.30
不做这一步虽然能安装python对应版本的gdal, 但是后续会报错, 而且该错误较难回溯:
ImportError: libgdal.so.30: cannot open shared object file: No such file or directory
检查版本
gdalinfo --version
gdal-config --version

在python中安装对应版本gdal
这时候就可以
pip install gdal==3.4.2
测试
# 在python下运行
from osgeo import gdal
gdal.__version__ # 3.4.2
大功告成!

本文档记录了在Ubuntu系统中安装GDAL3.4.2及其Python绑定的过程,包括先安装libgdal-dev,设置环境变量,手动下载并编译GDAL源码,解决编译错误,创建软链接,以及最后通过pip安装对应版本的GDAL库。详细步骤旨在解决因依赖问题导致的安装困难。
6442

被折叠的 条评论
为什么被折叠?



