首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >导入django.contrib.gis.gdal: OSError: /usr/lib/libgdal.so.1:未定义符号: sqlite3_column_table_name时的异常

导入django.contrib.gis.gdal: OSError: /usr/lib/libgdal.so.1:未定义符号: sqlite3_column_table_name时的异常
EN

Stack Overflow用户
提问于 2017-01-07 12:44:41
回答 4查看 2.8K关注 0票数 2

我遵循教程在我的Ubuntu14.04上安装Geodjango。我使用Django 1.10和Python3.5、postgres-9.6和postgis 2.3。

我检查了这里这里,但没有找到解决方案。在新安装的ubuntu14.04虚拟机中,它工作正常。

但是在我的安装中,当我尝试进行迁移时,我得到了: OSError: /usr/lib/libgdal.so.1:未定义的符号: sqlite3_column_table_name

再深入调查一下,我只是简单地尝试了一下:

代码语言:javascript
复制
from django.contrib.gis import gdal

并得到:

代码语言:javascript
复制
Traceback (most recent call last):   
File "<stdin>", line 1, in <module>   
File "/home/pv/anaconda3/envs/dj110py35/lib/python3.5/site-packages/django/contrib/gis/gdal/__init__.py", line 49, in <module>
    from django.contrib.gis.gdal.driver import Driver  # NOQA   
File "/home/pv/anaconda3/envs/dj110py35/lib/python3.5/site-packages/django/contrib/gis/gdal/driver.py", line 5, in <module>
    from django.contrib.gis.gdal.prototypes import ds as vcapi, raster as rcapi   
File "/home/pv/anaconda3/envs/dj110py35/lib/python3.5/site-packages/django/contrib/gis/gdal/prototypes/ds.py", line 9, in <module>
    from django.contrib.gis.gdal.libgdal import GDAL_VERSION, lgdal   
File "/home/pv/anaconda3/envs/dj110py35/lib/python3.5/site-packages/django/contrib/gis/gdal/libgdal.py", line 48, in <module>
    lgdal = CDLL(lib_path)   
File "/home/pv/anaconda3/envs/dj110py35/lib/python3.5/ctypes/__init__.py", line 347, in __init__
    self._handle = _dlopen(self._name, mode)
OSError: /usr/lib/libgdal.so.1: undefined symbol: sqlite3_column_table_name

对我如何修复我的设置有什么建议吗?

更新

这似乎是我的conda环境的一个问题。当我开始使用problem时,问题就不再出现了。我没有回答这个问题,因为我找不到解决办法,只有一个解决办法。但是用pip重新构建环境的工作方式是

EN

回答 4

Stack Overflow用户

发布于 2017-07-07 04:50:32

在conda环境中:conda install -c conda-forge gdal=2.2.1

在django settings.py:GDAL_LIBRARY_PATH = '<HOME>/anaconda3/envs/<env_name>/lib/libgdal.so'

票数 3
EN

Stack Overflow用户

发布于 2017-09-22 00:44:37

我也有这个问题,并指定了

代码语言:javascript
复制
GDAL_LIBRARY_PATH = <HOME>/anaconda3/envs/<env_name>/lib/libgdal.so

( project.settingsos.environ.setdefault)导致

代码语言:javascript
复制
libicui18n.so.56: cannot open shared object file: No such file or directory. 

对我有效的解决办法是升级重症监护病房:

代码语言:javascript
复制
conda install -c conda-forge icu=58

升级icu也会导致其他包版本的一些变化(qt从5.6.2-4降级到5.6.2-3,其余的升级)。

票数 0
EN

Stack Overflow用户

发布于 2019-01-23 13:38:30

我只是在conda环境下运行:

代码语言:javascript
复制
conda install gdal

盖伊·德·卡鲁费尔解没有为我工作,尽管他指出了正确的方向,谢谢

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41521577

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档