alu*_*ach 3 postgresql postgis
尝试在Ubuntu 11.10上安装PostGIS 2.0.0.我基本上遵循了这里的OSGeo指令:http://trac.osgeo.org/postgis/wiki/UsersWikiPostGIS20Ubuntu1110src.我建立了GEOS 3.3.3.如果我输入geos-config --version终端,我会被退回3.3.3.
我可以跑./configure,make没有问题. ./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
Run Code Online (Sandbox Code Playgroud)
一切看起来都不错吧?但这是问题所在.当我运行时make test,构建在最后失败了:
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
Run Code Online (Sandbox Code Playgroud)
里面/tmp/pgis_reg/regress_log是:
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
Run Code Online (Sandbox Code Playgroud)
我试图忽略这个问题并继续前进,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
Run Code Online (Sandbox Code Playgroud)
我在网上四处看看,找到另外一个有GEOSRelatePatternMatch问题的人,但他的原因是多次安装GEOS.据我所知,我只有一个.有任何想法吗?
小智 5
我认为这是因为postgis认为库位于服务器上的不同位置,然后才是实际的.我从Ubuntu GIS获得的包有同样的错误.它们被安装到/ usr/lib,但由于某种原因postgis在/ usr/local/lib中寻找它们.无论哪种方式,我运行'ldconfig'并再次运行测试,它工作得很好.
| 归档时间: |
|
| 查看次数: |
3992 次 |
| 最近记录: |