Установка 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 target:

$ ./configure --target=macosx

Инструкции для macOS

Чтобы установить библиотеку и инструменты SpatiaLite, пользователи macOS могут выбирать между пакетами KyngChaos и Homebrew .

KyngChaos

Сначала следуйте инструкциям в разделе пакетов KyngChaos .

При создании базы данных SpatiaLite spatialiteпрограмма обязательна. Однако вместо того, чтобы пытаться скомпилировать инструменты SpatiaLite из исходного кода, загрузите пакет SpatiaLite Tools для macOS и установите spatialite его в папку, доступную в вашем PATH. Например:

$ curl -O https://www.kyngchaos.com/files/software/frameworks/Spatialite_Tools-4.3.zip
$ unzip Spatialite_Tools-4.3.zip
$ cd Spatialite\ Tools/tools
$ sudo cp spatialite /Library/Frameworks/SQLite3.framework/Programs

Наконец, чтобы GeoDjango смог найти библиотеку KyngChaos SpatiaLite, добавьте в свой settings.py:

SPATIALITE_LIBRARY_PATH='/Library/Frameworks/SQLite3.framework/SQLite3'

Домашнее пиво

Homebrew обрабатывает все связанные со SpatiaLite пакеты от вашего имени, включая SQLite, 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'

Copyright ©2021 All rights reserved