Установка Spatialite
SpatiaLite добавляет пространственную поддержку в SQLite, превращая его в полнофункциональную пространственную базу данных.
Сначала проверьте, можно ли установить Spatialite из системных пакетов или библиотек.
Например, в дистрибутивах на базе Debian попробуйте установить пакет spatialite-bin. Для дистрибутивов, которые поставляют SpatiaLite 4.2+, установите libsqlite3-mod-spatialite.
Для Mac OS X следуйте инструкциям ниже.
Для Windows вы можете найти бинарные файлы на домашней странице Gaia-SINS.
В любом случае, вы всегда сможете установить из исходных кодов.
SPATIALITE_LIBRARY_PATH настройка, необходимая для SpatiaLite 4.2+
Если вы используете SpatiaLite 4.2+, вы должны добавить это в свои настройки:
SPATIALITE_LIBRARY_PATH = 'mod_spatialite'
Установка из исходных кодов
GEOS и PROJ.4 должны быть установлены перед построением SpatiaLite.
SQLite
Сначала проверьте, скомпилирован ли SQLite с модулем R*Tree. Запустите командную строку sqlite3 и введите следующую команду:
sqlite> CREATE VIRTUAL TABLE testrtree USING rtree(id,minX,maxX,minY,maxY);
Если вы получите ошибку, вам придется перекомпилировать SQLite из исходных кодов. В противном случае, просто пропустите этот раздел.
Чтобы установить из исходных кодов, скачайте последний архив исходных кодов с страницы загрузки SQLite и распакуйте его:
$ wget https://sqlite.org/sqlite-amalgamation-3.6.23.1.tar.gz $ tar xzf sqlite-amalgamation-3.6.23.1.tar.gz $ cd sqlite-3.6.23.1
Далее, выполните скрипт configure – однако переменная среды CFLAGS должна быть настроена таким образом, чтобы SQLite знал, как скомпилировать модуль R*Tree:
$ CFLAGS="-DSQLITE_ENABLE_RTREE=1" ./configure $ make $ sudo make install $ cd ..
Библиотека SpatiaLite (libspatialite)
Получите последний набор исходных кодов библиотеки SpatiaLite с страницы загрузки:
$ wget http://www.gaia-gis.it/gaia-sins/libspatialite-sources/libspatialite-4.1.0.tar.gz $ tar xaf libspatialite-4.1.0.tar.gz $ cd libspatialite-4.1.0 $ ./configure $ make $ sudo make install
Примечание
Пользователям Mac OS X, которые собирают из исходных кодов, необходимо настроить библиотеку и инструменты SpatiaLite:
target Инструкции, специфичные для Mac OS X
Для установки библиотеки и инструментов SpatiaLite пользователи Mac OS X могут выбрать между пакетами KyngChaos и Homebrew.
KyngChaos
Сначала выполните инструкции в разделе пакетов KyngChaos.
При создании базы данных SpatiaLite требуется программа spatialite. Однако вместо попытки скомпилировать инструменты SpatiaLite из исходных кодов, скачайте бинарные файлы SpatiaLite для OS X и установите spatialite в место, доступное в вашей PATH. Например:
$ curl -O http://www.gaia-gis.it/spatialite/spatialite-tools-osx-x86-2.3.1.tar.gz $ tar xzf spatialite-tools-osx-x86-2.3.1.tar.gz $ cd spatialite-tools-osx-x86-2.3.1/bin $ sudo cp spatialite /Library/Frameworks/SQLite3.framework/Programs
Наконец, чтобы GeoDjango смог найти библиотеку KyngChaos SpatiaLite, добавьте следующее в settings.py:
SPATIALITE_LIBRARY_PATH='/Library/Frameworks/SQLite3.framework/SQLite3'
Homebrew
Homebrew обрабатывает все пакеты, связанные с SpatiaLite, за вас, включая SQLite3, SpatiaLite, PROJ и GEOS. Установите их так:
$ brew update $ brew install spatialite-tools $ brew install gdal
Наконец, чтобы GeoDjango смог найти библиотеку SpatiaLite, добавьте следующее в settings.py:
SPATIALITE_LIBRARY_PATH='/usr/local/lib/mod_spatialite.dylib'
© Django Software Foundation and individual contributors
Licensed under the BSD License.
https://docs.djangoproject.com/en/1.9/ref/contrib/gis/install/spatialite/