Установка SpatiaLite¶
`SpatiaLite`__ добавляет пространственную поддержку в SQLite, превращая его в полнофункциональную пространственную базу данных.
Сначала проверьте, можете ли вы установить SpatiaLite из системных пакетов или двоичных файлов.
Например, в дистрибутивах на основе Debian, в которые входит SpatiaLite 4.3+, попробуйте установить пакет libsqlite3-mod-spatialite. Для более старых версий установите Spatialite-bin.
Для macOS следуйте инструкциям ниже.
Для Windows вы можете найти двоичные файлы на домашней странице `Gaia-SINS`__.
В любом случае у вас всегда должна быть возможность установить из исходного кода.
Установка из исходников¶
GEOS и PROJ следует установить до сборки SpatiaLite.
SQLite¶
Сначала проверьте, скомпилирован ли SQLite с модулем R*Tree____. Запустите интерфейс командной строки sqlite3 и введите следующий запрос:
sqlite> CREATE VIRTUAL TABLE testrtree USING rtree(id,minX,maxX,minY,maxY);
Если вы получите ошибку, вам придется перекомпилировать SQLite из исходного кода. В противном случае пропустите этот раздел.
Для установки из исходных кодов загрузите последний исходный архив объединения со `страницы загрузки SQLite`__ и извлеките:
$ wget https://www.sqlite.org/YYYY/sqlite-amalgamation-XXX0000.zip
$ unzip sqlite-amalgamation-XXX0000.zip
$ cd sqlite-amalgamation-XXX0000
Затем запустите сценарий configure, однако переменную среды CFLAGS необходимо настроить так, чтобы SQLite знал, что нужно построить модуль R*Tree:
$ CFLAGS="-DSQLITE_ENABLE_RTREE=1" ./configure
$ make
$ sudo make install
$ cd ..
Библиотека SpatiaLite (libspatialite)¶
Получите последний пакет исходного кода библиотеки SpatiaLite со `страницы загрузки`__:
$ wget https://www.gaia-gis.it/gaia-sins/libspatialite-sources/libspatialite-X.Y.Z.tar.gz
$ tar xaf libspatialite-X.Y.Z.tar.gz
$ cd libspatialite-X.Y.Z
$ ./configure
$ make
$ sudo make install
Примечание
Для пользователей macOS, собирающих исходный код, библиотека и инструменты SpatiaLite должны иметь настроенную «цель»:
$ ./configure --target=macosx
инструкции для macOS¶
Чтобы установить библиотеку и инструменты SpatiaLite, пользователи macOS могут использовать Homebrew.
Домашнее пиво¶
Homebrew обрабатывает от вашего имени все пакеты, связанные с SpatiaLite, включая SQLite, SpatiaLite, PROJ и GEOS. Установите их следующим образом:
$ brew update
$ brew install spatialite-tools
$ brew install gdal
Наконец, чтобы GeoDjango мог найти библиотеку SpatiaLite, установите для параметра SPATIALITE_LIBRARY_PATH ее путь. Это будет в вашем пути установки Brew, который вы можете проверить с помощью:
$ brew --prefix
/opt/homebrew
Используя этот путь установки Brew, полный путь можно создать следующим образом:
SPATIALITE_LIBRARY_PATH = "/opt/homebrew/lib/mod_spatialite.dylib"