Установите Spatialite для Python (GeoDjango) на OS X
Я рву свои волосы, пытаясь установить Spatialite для GeoDjango!
Я уже использую Homebrew, это обычно просто и удобно, поэтому я сначала попытался следоватьДоморощенные инструкции для геоджанго.
Но это все равно, что установить любую базу данных, то есть Spatialite. Следующим шагом будет попытка установить Spatialite, но в Django docs нет инструкций для Homebrew.
я нашелэтот урок который выглядит идеально - это Homebrew и виртуально дружественная установка Spatialite для GeoDjango.
Но это не работает ... кажется, что мойpysqlite
связан с версией SQLite без пространственной поддержки, которая поставляется с OS X, а не с версией Spatial-ised, которую я установил из Homebrew, я получаю эту ошибку, когда Django пытается подключиться к базе данных:
«Библиотека pysqlite не поддерживает загрузку расширений C. Как SQLite, так и pysqlite должны быть настроены так, чтобы загрузка расширений могла использовать SpatiaLite».
Автор pysqlite не ответил намои просьбы о помощи на Github и я не нашел ничего через Google.
Поэтому я вернулся к чертежной доске и решил следовать«Инструкции для Mac OS X» в документах GeoDjango ... путем установки различных географических библиотек из бинарных пакетов KyngChaos.
Документы говорят: «Установите пакеты в порядке, указанном выше», но я обнаружил, что не могу установитьUnixImageIO
без установкиPROJ
первый. Ссылка в документах на скачивание бинарных файлов Spatialite (http://www.gaia-gis.it/spatialite-2.3.1/binaries.html), поэтому вместо этого я использовал «Spatialite Tools v4.1» от KyngChaos.
Переходя к следующему шагу, я получаю эту ошибку:
$ spatialite geodjango.db "SELECT InitSpatialMetaData();"
SQLite header and source version mismatch
2013-10-17 12:57:35 c78be6d786c19073b3a6730dfe3fb1be54f5657a
2013-09-03 17:11:13 7dd4968f235d6e1ca9547cda9cf3bd570e1609ef
Не совсем уверен, что не так в этой точке.
Есть кто-то ещездесь на ТАК кто прошел маршрут KyngChaos и просто заканчивает тем же«И SQLite, и pysqlite должны быть настроены так, чтобы разрешать загрузку расширений» ошибка, которую я получил от маршрута Homebrew в любом случае.
я нашелэтот билет # 17756 для добавленияpyspatialite
поддержка Джанго -pyspatialite
должен быть более простым способомpip install
все, но, к сожалению, это тоже не работает (см. комментарии к нижней части билета).
Я немного неохотно начинаю пытаться собрать все из исходного кода вручную, так как кажется вероятным, что я просто снова столкнусь с теми же проблемами, но потрачу на поиски загадочных ошибок компилятора, магических флагов, путей и т. Д. ,
Я готов сдаться и просто использовать Postgres / PostGIS.