gdal不是一个纯净的python库,不能直接像安装python库一样进行pip install gdal安装,然后本人通过conda和pip两个方法安装了gdal环境。
pip安装gdal环境的方法
添加系统安装的搜索源
sudo add-apt-repository ppa:ubuntugis/ppa
执行安装源的更新
sudo apt-get update
安装gdal-bin包
sudo apt-get install gdal-bin
验证安装的gdal-bin的效果
ogrinfo --version
也许你会问这个gdal-bin有什么用,其实它就是能够自动帮助抓取一些相关依赖,至少安装了它之后会告诉你libgdal的安装版本。
根据gdal-bin寻找对应版本的libgdal
sudo apt-get install libgdal-dev
配置gdal的环境变量
export CPLUS_INCLUDE_PATH=/usr/include/gdal
export C_INCLUDE_PATH=/usr/include/gdal
这一步的原因可能就是因为GDAL不是纯净的python库,需要先进行C++版本安装,然后再pip得到GDAL编译为python GDAL版本。
根据ogrinfo版本安装GDAL python版本
pip install GDAL==3.0.4
参考网址
英文版本的还是比较全,参考网址
conda update conda
sudo apt-get install libgdal-dev gdal-bin
export CPLUS_INCLUDE_PATH=/usr/include/gdal
export C_INCLUDE_PATH=/usr/include/gdal
# check gdal version with
gdal-config --version
echo '
name: raster-pipeline
channels:
- defaults
dependencies:
- python=3.7.*
- cython
- numpy
- ipython
- libspatialindex
- libgdal=USE_GDAL_VERSION
- gdal=USE_GDAL_VERSION
- pip
- pip:
- numpy>=1.18.5
- GDAL==USE_GDAL_VERSION
- pyproj>=2.6.1.post1
- rasterio>=1.1.5
' > raster_pipeline.yml
conda env create -f raster_pipeline.yml -v
conda activate raster_pipeline
python -c "from osgeo import gdal"
conda deactivate
gdal的conda改正便捷安装方法
conda install gdal就可以安装python版本的gdal了
libgdal是C++版本的库,之所以之前认为自己没有安装上是因为我们导入的应该是from osgeo import gdal而不是直接import gdal