2012-05-10 9 views
3

PostGIS 2.0.0をUbuntu 11.10にインストールしようとしています。私は基本的にOSGeoの指示に従っています:http://trac.osgeo.org/postgis/wiki/UsersWikiPostGIS20Ubuntu1110src。私はGEOS 3.3.3を構築しました。端末にgeos-config --versionと入力すると、3.3.3が返されます。PostGIS 2.0.0 GEOSのインストール

./configuremakeを問題なく実行できます。 ./configureで終わります。

PostGIS is now configured for x86_64-unknown-linux-gnu 

-------------- Compiler Info ------------- 
C compiler:   gcc -g -O2 
C++ compiler:   g++ -g -O2 

-------------- Dependencies -------------- 
GEOS config:   /usr/local/bin/geos-config 
GEOS version:   3.3.3 
GDAL config:   /usr/local/bin/gdal-config 
GDAL version:   1.9.0 
PostgreSQL config: /usr/bin/pg_config 
PostgreSQL version: PostgreSQL 9.1.3 
PROJ4 version:  47 
Libxml2 config:  /usr/bin/xml2-config 
Libxml2 version:  2.7.8 
JSON-C support:  no 
PostGIS debug level: 0 
Perl:     /usr/bin/perl 

--------------- Extensions --------------- 
PostGIS Raster:  enabled 
PostGIS Topology:  enabled 

-------- Documentation Generation -------- 
xsltproc:    /usr/bin/xsltproc 
xsl style sheets:  
dblatex:    
convert:    
mathml2.dtd:   http://www.w3.org/Math/DTD/mathml2/mathml2.dtd 

すべてはうまく見えますか?しかし、ここに問題があります。私はmake testを実行すると、ビルドは最後にこれで失敗します。/tmp/pgis_reg/regress_logインサイド

Creating spatial db postgis_reg 
createlang: language "plpgsql" is already installed in database "postgis_reg" 
Preparing spatial db postgis_reg 

Something went wrong during db initialization (core module). 
For details, check /tmp/pgis_reg/regress_log 

make[1]: *** [check] Error 1 
make[1]: Leaving directory `/home/anthony/Downloads/postgis-2.0.0/regress' 
make: *** [check] Error 1 

は次のとおりです。

SET 
BEGIN 
psql:/home/anthony/Downloads/postgis-2.0.0/regress/00-regress-install/share/contrib/postgis/postgis.sql:69: ERROR: could not load library "/home/anthony/Downloads/postgis-2.0.0/regress/00-regress-install/lib/postgis-2.0.so": /home/anthony/Downloads/postgis-2.0.0/regress/00-regress-install/lib/postgis-2.0.so: undefined symbol: GEOSRelatePatternMatch 

私はsudo make installを実行し、問題を無視して前進しようとしましたが、私は取得するときpsql -d infinitydb -f postgis.sqlと私のデシベルを設定する私は同様の問題を得る:

SET 
BEGIN 
psql:postgis.sql:69: ERROR: could not load library "/usr/lib/postgresql/9.1/lib/postgis-2.0.so": /usr/lib/postgresql/9.1/lib/postgis-2.0.so: undefined symbol: GEOSRelatePatternMatch 

私はネット上で周りを見回しましたが、一つの他のあたりを見つけました息子にはGEOSRelatePatternMatchという問題がありましたが、GEOSの複数のインストールが原因でした。私が知っている限り、私はただ一つしか持っていません。何か案は?

答えて

4

PostGISは、別のgeosライブラリからシンボルをロードしようとしています。お使いのシステムでgeosを検索し、すべて削除して再コンパイルしてください。

0

私はこれらの命令を書いている間にその問題にぶつかりましたが、そのためにはsubmitted a bugです。私はそれを修正しようとしたが、あきらめたので、make testの既知の制限があります。 (私はテストの問題を理解してチケットを再オープンしたいと思っていますが、GEOSのバージョンとGDALが混在しているので、おそらくMakefileと何か関係があります)

make testで障害が発生したにもかかわらず、この問題がなくてもインストールが正常に行われるはずです。次の手順に進み、インストールします。

5

私はこれは、ライブラリがあなたのサーバ上の別の場所にあると思ってから、実際には何をしているのかというポストギスによるものだと思います。私はUbuntu GISから入手したパッケージと同じエラーがありました。それらは/ usr/libにインストールされましたが、何らかの理由でpostgisが/ usr/local/libでそれらを探していました。いずれにせよ、私は 'ldconfig'を実行してテストを再実行しましたが、うまくいきました。

+0

これは正しく、同じ問題を修正しました。ありがとうございました – chhantyal