7

OS X Yosemite に Spatialite ツールをインストールする際に問題があります。まず、Install Spatialite for python (GeoDjango) on OS X を読みましたが、問題の解決には役立ちませんでした。

ここでは、Homebrew で Spatialite をインストールするために行った手順を説明します。

1) 最新の sqlite3 をインストールする

brew install sqlite
==> Downloading https://homebrew.bintray.com/bottles/sqlite-3.8.8.3.yosemite.bottle.tar.gz
Already downloaded: /Library/Caches/Homebrew/sqlite-3.8.8.3.yosemite.bottle.tar.gz
==> Pouring sqlite-3.8.8.3.yosemite.bottle.tar.gz
==> Caveats
This formula is keg-only, which means it was not symlinked into /usr/local.

Mac OS X already provides this software and installing another version in
parallel can cause all kinds of trouble.

OS X provides an older sqlite3.

Generally there are no consequences of this for you. If you build your
own software and it requires this formula, you'll need to add to your
build variables:

    LDFLAGS:  -L/usr/local/opt/sqlite/lib
    CPPFLAGS: -I/usr/local/opt/sqlite/include

==> Summary
  /usr/local/Cellar/sqlite/3.8.8.3: 9 files, 2.1M

2) libspatialite をインストールする

brew install libspatialite 
==> Downloading https://homebrew.bintray.com/bottles/libspatialite-4.2.0_1.yosemite.bottle.tar.gz
Already downloaded: /Library/Caches/Homebrew/libspatialite-4.2.0_1.yosemite.bottle.tar.gz
==> Pouring libspatialite-4.2.0_1.yosemite.bottle.tar.gz
  /usr/local/Cellar/libspatialite/4.2.0_1: 26 files,  17M

3)spatialite-toolsをインストールする

brew install spatialite-tools 
==> Downloading https://homebrew.bintray.com/bottles/spatialite-tools-4.2.0.yosemite.bottle.3.tar.gz
Already downloaded: /Library/Caches/Homebrew/spatialite-tools-4.2.0.yosemite.bottle.3.tar.gz
==> Pouring spatialite-tools-4.2.0.yosemite.bottle.3.tar.gz
  /usr/local/Cellar/spatialite-tools/4.2.0: 21 files, 804K

4) これまでのところ良さそうです。Spatialite を使用してみましょう

spatialite -version
SQLite header and source version mismatch
2015-02-25 13:29:11 9d6c1880fb75660bbabd693175579529785f8a6b
2014-12-09 01:34:36 f66f7a17b78ba617acde90fc810107f34f1a1f2e

したがって、spatialite は sqlite3 (f66f7a17b78ba617acde90fc810107f34f1a1f2e) の上に構築されているように見えますが、(9d6c1880fb75660bbabd693175579529785f8a6b) ではありません。

現在のバージョン 3.8.8.3 9d6c1880fb75660bbabd693175579529785f8a6b

必要なバージョン 3.8.7.4 f66f7a17b78ba617acde90fc810107f34f1a1f2e

これを修正するには、homebrew の最新バージョンである 3.8.8.3 の代わりに sqlite 3.8.7.4 を手動でインストールする必要があります。

6) 現在インストールされている sqlite を削除します

brew remove sqlite 
brew unlink sqlite

7) sqlite 3.8.7.4 をインストールします。

https://www.sqlite.org/src/info/f66f7a17b78ba617acde90fc810107f34f1a1f2eから tarbal をダウンロードし、コンテンツを展開します。

でインストール

./configure
sudo make clean
sudo make
sudo make install

8) Spatialite データベースを作成してみる

spatialite geo.db "SELECT InitSpatialMetaData();"
dyld: lazy symbol binding failed: Symbol not found: _sqlite3_rtree_geometry_callback
  Referenced from: /usr/local/lib/libspatialite.7.dylib
  Expected in: /usr/local/lib/libsqlite3.0.dylib

dyld: Symbol not found: _sqlite3_rtree_geometry_callback
  Referenced from: /usr/local/lib/libspatialite.7.dylib
  Expected in: /usr/local/lib/libsqlite3.0.dylib

Trace/BPT trap: 5

したがって、問題は、ライブラリで _sqlite3_rtree_geometry_callback が見つからないことです...

私が間違っていたこと、または OS X にインストールするためのより良い方法があるかどうかを教えてください。

お時間をいただきありがとうございます

4

0 に答える 0