2017-01-07 17 views
1

Я следил за tutorial для установки Geodjango на моем Ubuntu 14.04. Я использую Django 1.10 и Python 3.5, postgres-9.6 и postgis 2.3.Исключение Geodjango при импорте django.contrib.gis.gdal: OSError: /usr/lib/libgdal.so.1: undefined symbol: sqlite3_column_table_name

Я проверил here и here, но не нашел решения. В новой установленной виртуальной машине ubuntu 14.04 она работала.

Но в моей установке, когда я попытался сделать миграцию, я получил: OSError: /usr/lib/libgdal.so.1 не определено символ: sqlite3_column_table_name

Исследуя немного дальше, я попытался просто:

from django.contrib.gis import gdal 

И получил:

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 

есть ли какие-либо предложения о том, как я могу отремонтировать мою установку?

UPDATE

Это кажется проблема- с моей Конда среды. Когда я начал использовать pip virtualv, проблема больше не возникала. Я не отвечаю на вопрос, потому что я не мог найти решение, только обходное решение. Но восстановление окружающей среды с помощью pip virtualenv works.

ответ

0

В Конда среде: conda install -c conda-forge gdal=2.2.1

В Джанго settings.py: GDAL_LIBRARY_PATH = '<HOME>/anaconda3/envs/<env_name>/lib/libgdal.so'

0

У меня был этот вопрос, а также и с указанием

GDAL_LIBRARY_PATH = <HOME>/anaconda3/envs/<env_name>/lib/libgdal.so 

project.settings или os.environ.setdefault) привело к

libicui18n.so.56: cannot open shared object file: No such file or directory. 

Исправление, работал для меня было обновить ОРИТ:

conda install -c conda-forge icu=58 

Обновление Icu приводят к некоторым изменениям в других версиях пакета, а также (кварты понижены от 5.6.2-4 до 5.6.2-3, остальные модернизированы).