SpatiaLite のインストール

SpatiaLite はSQLiteに空間データのサポートを追加し、それを完全な機能を持つ空間データベースに変えます。

まず、システムパッケージやバイナリから SpatiaLiteを インストールできるかどうかを確認してください。

例えば、SpatiaLite 4.3 以上をパッケージ化している Debian ベースのディストリビューションでは、 libsqlite3-mod-spatialite パッケージをインストールしてみてください。古いリリースの場合は spatialite-bin をインストールしてください。

macOS の場合は、次の 手順 に従ってください。

Windowsの場合は、 Gaia-SINS ホームページにバイナリがあります。

いずれの場合も、常に ソースコードからのインストール が可能です。

ソースコードからのインストール

GEOSとPROJ は、 SpatiaLite をビルドする前にインストールする必要があります。

SQLite

まず最初に、SQLite が R*Tree module でコンパイルされているかどうかを確認してください。sqlite3 コマンドラインインターフェースを起動し、以下のクエリを入力してください:

sqlite> CREATE VIRTUAL TABLE testrtree USING rtree(id,minX,maxX,minY,maxY);

エラーが発生した場合は、SQLite をソースから再コンパイルする必要があります。それ以外の場合は、このセクションをスキップしてください。

ソースからインストールするには、SQLite download page から最新の amalgamation ソースアーカイブをダウンロードし、展開してください:

$ wget https://www.sqlite.org/YYYY/sqlite-amalgamation-XXX0000.zip
$ unzip sqlite-amalgamation-XXX0000.zip
$ cd sqlite-amalgamation-XXX0000

次に、 configure スクリプトを実行します。ただし、SQLite が R*Tree モジュールをビルドすることを認識できるように、CFLAGS 環境変数をカスタマイズする必要があります:

$ CFLAGS="-DSQLITE_ENABLE_RTREE=1" ./configure
$ make
$ sudo make install
$ cd ..

SpatiaLite ライブラリ (libspatialite)

download page から最新の 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 ユーザーは Homebrew を使用できます。

Homebrew

Homebrew は、SQLite、SpatiaLite、PROJ、GEOSを含む全ての SpatiaLite 関連パッケージをあなたに代わって処理します。以下のようにインストールしてください:

$ brew update
$ brew install spatialite-tools
$ brew install gdal

Finally, for GeoDjango to be able to find the SpatiaLite library, set the SPATIALITE_LIBRARY_PATH setting to its path. This will be within your brew install path, which you can check with:

$ brew --prefix
/opt/homebrew

Using this brew install path, the full path can be constructed like this:

SPATIALITE_LIBRARY_PATH = "/opt/homebrew/lib/mod_spatialite.dylib"
Back to Top