Spec-Zone.ru › Django 3.2

Установка 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 для 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

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'

© Django Software Foundation and individual contributors
Licensed under the BSD License.
https://docs.djangoproject.com/en/3.2/ref/contrib/gis/install/spatialite/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API