postgreql10.4+postgis2.4+pgrouting2.6環境構築(centos 7)

2131 ワード

この2,3日ずっとオープンソースGIS環境を構築して、すべて涙で、多く言わないで、出会った穴を記録します;
一、postgresql 10.4遭遇したピットを取り付ける
(1)最初はyum方式でインストールするがpostgisプラグインをインストールするとpgxsがないことを示す.mkファイル;ついにソースコードの方式を通じてインストールして、ついに解決します;
(2)fuzzystrmatchの拡張を作成できず、インストールパスの$PGHOME/share/extensionディレクトリの下にfuzzystrmatchがないことを発見した.controlのファイル、ネット上で半日探して、postgresqlがデフォルトでこの拡張をインストールしないことを発見して、しかしソースコードのパッケージの中にこのファイルがあって、だからこのファイルをディレクトリの下にコピーして、成功に拡張をインストールします;(fuzzystrmatchの拡張子をインストールしてから、geocoder、addrの拡張子をインストールする必要があります).
(3)postgis拡張を作成する際,soファイルが少なくなり,インストールディレクトリから手動でコピーする.
二、postgis取付中のピット
(1)postgisは、geos、libxml 2、json-c、gdal、projのいくつかの拡張に依存しています.私は3次元データを分析するため、SFCGALもインストールしています.geos、gdal、proj、json-cはソースコードでインストールする方法でインストールしやすいですが、libxml 2とSFCGALはあまりインストールしにくく、依存パッケージが多すぎるので、yumでインストールしたほうがいいです.インストールした後、インストールパスが見つからないということです.rpm-ql XXXの方式を通じて探すことができます;
(2)yum方式でインストールしたlibxmlとSFCGALはdevelバージョンを一緒にインストールしなければならない.そうしないとヘッダファイルが欠けてしまう.
(3)postgisのインストール時、configureのコマンドを添付します(表示しやすいように改行していますので、コマンドを実行する場合は、リターンバーを削除してください):
./configure 
--prefix=/usr/local/pgis2.4 
--with-pgconfig=/usr/local/pgsql10.4/bin/pg_config 
--with-gdalconfig=/usr/local/bin/gdal-config 
--with-geosconfig=/usr/local/bin/geos-config 
--with-projdir=/usr/local/bin/ 
--with-jsondir=/usr/local/ 
--with-sfcgal=/usr/bin/sfcgal-config 

三、pgrouting取り付けで出会った穴
(1)yum方式でインストールしようとしたが、postgresql、postgisなどに依存していることが判明し、インストールが完了すると、その2つを再インストールした....環境をめちゃくちゃにした(肝心なのはそのようにインストールしたpgsql、postgisはまだ使えない)...だからまたアンインストールして、ソースコードの方式を通じてインストールします;pgroutingはboot、CGALに依存し、cmakeでインストールする(バージョン3.8および上)ので、まずcmakeのソースコード(yumインストールのバージョンは2.8)をダウンロードし、makeでインストールします.
CGAL取付:参考https://doc.cgal.org/latest/Manual/installation.htmlbootインストール:リファレンスhttps://blog.csdn.net/xocoder/article/details/23571421
 
postgresql+postgisインストールは以下の参考になります.https://www.cnblogs.com/ilifeilong/p/6979288.html
postgisの公式インストールの説明:https://postgis.net/docs/postgis_installation.html
pgrouting公式インストール説明:https://docs.pgrouting.org/2.6/en/pgRouting-installation.html
osm 2 pgroutingインストールの説明:https://github.com/pgRouting/osm2pgrouting