Проблемы со spatialite в QGIS 1.8.

Вопросы по свободной ГИС QGIS. Сообщения об ошибках, предложения по улучшению, локализация.
Ответить
Аватара пользователя
SS_Rebelious
Гуру
Сообщения: 1304
Зарегистрирован: 24 фев 2009, 16:51
Репутация: 99
Ваше звание: GIS pro-fan
Откуда: Lahti / Газ-ПУТИНбург
Контактная информация:

Проблемы со spatialite в QGIS 1.8.

Сообщение SS_Rebelious » 21 авг 2012, 01:10

После установки QGIS 1.8, плагин DBManager стал выдавать сообщение: "no module named pyspatiallite". Также при попытке импорта в pyhon модуля qgis.core выдаётся ошибка:
>>> import qgis.core
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: /usr/lib64/libspatialite.so.2: undefined symbol: GEOSBufferParams_destroy
Как починить поддержку spatiallite?

openSUSE 12.1
Последний раз редактировалось SS_Rebelious 22 авг 2012, 19:24, всего редактировалось 1 раз.
Look for something long enough, and you will find it. Look for something without understanding, and it will find you...
"All paid jobs absorb and degrade the mind." Aristotle
If you take 1 step towards freedom it'll take 2 steps towards you!

Voltron
Гуру
Сообщения: 2627
Зарегистрирован: 29 мар 2007, 14:12
Репутация: 34
Откуда: Ukraine

Re: Проблемы со spatialite в QGIS 1.8.

Сообщение Voltron » 21 авг 2012, 09:21

Установить пакет pyspatialite

Аватара пользователя
SS_Rebelious
Гуру
Сообщения: 1304
Зарегистрирован: 24 фев 2009, 16:51
Репутация: 99
Ваше звание: GIS pro-fan
Откуда: Lahti / Газ-ПУТИНбург
Контактная информация:

Re: Проблемы со spatialite в QGIS 1.8.

Сообщение SS_Rebelious » 21 авг 2012, 12:18

Voltron писал(а):Установить пакет pyspatialite
А разве он не должен идти в комплекте с QGIS? В предыдущей версии всё ведь работало.

Что касается самостоятельной установки пакета, то его установка проблемы решает не до конца: import qgis.core выдаёт всё ту же ошибку ( "/usr/lib64/libspatialite.so.2: undefined symbol: GEOSBufferParams_destroy"), а DB Manager, пишет, что "/usr/local/lib64/pyton2.7/site-packages/pyspatialite/_spatialite.so: undefined symbol: GEOSSimplify".

Переустановка libgeos ничего не даёт.
Look for something long enough, and you will find it. Look for something without understanding, and it will find you...
"All paid jobs absorb and degrade the mind." Aristotle
If you take 1 step towards freedom it'll take 2 steps towards you!

Voltron
Гуру
Сообщения: 2627
Зарегистрирован: 29 мар 2007, 14:12
Репутация: 34
Откуда: Ukraine

Re: Проблемы со spatialite в QGIS 1.8.

Сообщение Voltron » 21 авг 2012, 12:38

SS_Rebelious писал(а):А разве он не должен идти в комплекте с QGIS? В предыдущей версии всё ведь работало.
Не должен.
В предыдущих версиях QGIS использовала встроенные (bundled) библиотеки spatialindex, spatialite (и, соответственно, pyspatialite). Это была вынужденная мера, т.к. раньше SpatiaLite была доступна не на всех платформах, кроме того был ряд проблем с поддержкой SQLite. Теперь же для большинства дистрибутивов и ОС используются внешние (общесистемные) библиотеки.

Внутренняя копия SpatiaLite осталась только из-за ряда старых веток Debian/Ubuntu.
SS_Rebelious писал(а):Что касается самостоятельной установки пакета, то его установка проблемы решает не до конца: import qgis.core выдаёт всё ту же ошибку ( "/usr/lib64/libspatialite.so.2: undefined symbol: GEOSBufferParams_destroy"), а DB Manager, пишет, что "/usr/local/lib64/pyton2.7/site-packages/pyspatialite/_spatialite.so: undefined symbol: GEOSSimplify".
Предполагаю, что pyspatialite собран для другой версии SpatiaLite либо для той же, но с другим набором опций.

Аватара пользователя
SS_Rebelious
Гуру
Сообщения: 1304
Зарегистрирован: 24 фев 2009, 16:51
Репутация: 99
Ваше звание: GIS pro-fan
Откуда: Lahti / Газ-ПУТИНбург
Контактная информация:

Re: Проблемы со spatialite в QGIS 1.8.

Сообщение SS_Rebelious » 21 авг 2012, 16:40

Voltron писал(а):Не должен.
Это конечно замечательно, учитывая, что без танцев с бубном pyspatialite не ставится (и для openSUSE его нет в репозиториях).

Судя по результатам тестов, pysqlite работает нормально:

Код: Выделить всё

>>> from pysqlite2 import test
>>> test.test()
.....................................................................................................................................................................................................................
----------------------------------------------------------------------
Ran 213 tests in 2.892s

OK
Voltron писал(а): Предполагаю, что pyspatialite собран для другой версии SpatiaLite либо для той же, но с другим набором опций.
Версия соответствует заявленным требованиям. Что касается набора опций, то я даже не представляю, куда нужно лезть, и какие опции какого софта проверять.

В принципе, мне всё-равно, заработает ли поддержка spatialite в DB Managere, меня больше волнует импорт qgis.core для python. Можно ли как-то обойти эту ошибку и загрузить таки qgis.core пусть и без поддержки spatialite?
Look for something long enough, and you will find it. Look for something without understanding, and it will find you...
"All paid jobs absorb and degrade the mind." Aristotle
If you take 1 step towards freedom it'll take 2 steps towards you!

Аватара пользователя
SS_Rebelious
Гуру
Сообщения: 1304
Зарегистрирован: 24 фев 2009, 16:51
Репутация: 99
Ваше звание: GIS pro-fan
Откуда: Lahti / Газ-ПУТИНбург
Контактная информация:

Re: Проблемы со spatialite в QGIS 1.8.

Сообщение SS_Rebelious » 22 авг 2012, 19:03

Проблема заключалась в том, что в системе были установлены две версии GEOS. Вторая, видимо была установлена вместе с утилитами для работы с mrSID.
Look for something long enough, and you will find it. Look for something without understanding, and it will find you...
"All paid jobs absorb and degrade the mind." Aristotle
If you take 1 step towards freedom it'll take 2 steps towards you!

Ответить

Вернуться в «QGIS»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 6 гостей