“从osgeo导入gdal”错误不适用于ubuntu 18.04.5

问题描述

我从pip上安装了gdal以及已完成的conda forge。但是当我导入它会推一个错误。谁能指导我前进的道路。

python -c "from osgeo import gdal"
Traceback (most recent call last):
  File "<string>",line 1,in <module>
  File "/home/hmahmad/anaconda3/envs/pt/lib/python3.8/site-packages/osgeo/__init__.py",line 26,in <module>
    _gdal = swig_import_helper()
  File "/home/hmahmad/anaconda3/envs/pt/lib/python3.8/site-packages/osgeo/__init__.py",line 22,in swig_import_helper
    _mod = imp.load_module('_gdal',fp,pathname,description)
  File "/home/hmahmad/anaconda3/envs/pt/lib/python3.8/imp.py",line 242,in load_module
    return load_dynamic(name,filename,file)
  File "/home/hmahmad/anaconda3/envs/pt/lib/python3.8/imp.py",line 342,in load_dynamic
    return _load(spec)
ImportError: libiconv.so.2: cannot open shared object file: No such file or directory

系统规格:

  1. ubuntu 18.04.5
  2. python 3.8.5 当我再次安装它时说
pip install GDAL
Requirement already satisfied: GDAL in /home/hmahmad/anaconda3/envs/pt/lib/python3.8/site-packages (2.3.3)

解决方法

似乎您缺少libiconv.so.2共享库。您应该手动安装libiconv。
Installing libiconv on Ubuntu Linux

,

通过安装带有conda的Rasterio库解决了该问题

conda install -c conda-forge rasterio

我不知道背后的联系是什么,但似乎它安装了所有相关的依赖库,并且使gdal正常工作。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...