我正在尝试从github上的源代码安装Nominatim。PostgreSQL 9.1和PostGIS 2已经使用yum安装。系统运行的是CentOS 6.3和cPanel。
git clone --recursive https://github.com/twain47/Nominatim.git
cd Nominatim
./autogen.sh问题:这是错误发生的时候,如下所示。有什么建议/想法可以解决吗?谢谢!
autoreconf: Entering directory `.'
autoreconf: configure.ac: not using Gettext
autoreconf: running: aclocal -I osm2pgsql/m4 --output=aclocal.m4t
/usr/share/automake-1.11/Automake/ChannelDefs.pm line 23:
This Perl hasn't been configured and built properly for the threads
module to work. (The 'useithreads' configuration option hasn't been used.)
Having threads support requires all of Perl and all of the XS modules in
the Perl installation to be rebuilt, it is not just a question of adding
the threads module. (In other words, threaded and non-threaded Perls
are binary incompatible.)
If you want to the use the threads module, please contact the people
who built your Perl.
Cannot continue, aborting.
BEGIN failed--compilation aborted at /usr/local/lib/perl5/5.8.8/i686-linux/threads.pm line 28.
Compilation failed in require at /usr/share/automake-1.11/Automake/ChannelDefs.pm line 23.
BEGIN failed--compilation aborted at /usr/share/automake-1.11/Automake/ChannelDefs.pm line 26.
Compilation failed in require at /usr/share/automake-1.11/Automake/Configure_ac.pm line 26.
BEGIN failed--compilation aborted at /usr/share/automake-1.11/Automake/Configure_ac.pm line 26.
Compilation failed in require at /usr/bin/aclocal line 39.
BEGIN failed--compilation aborted at /usr/bin/aclocal line 39.
autoreconf: aclocal failed with exit status: 255perl -VSummary of my perl5 (revision 5 version 8 subversion 8) configuration:
Platform:
osname=linux, osvers=2.6.18-028stab094.3, archname=i686-linux
uname='linux host.padtrackr.com 2.6.18-028stab094.3 #1 smp thu sep 22 12:47:37 msd 2011 i686 i686 i386 gnulinux '
config_args='-ds -e -Dprefix=/usr/local -Doptimize=-Os -Duseshrplib -Dusemymalloc=y'
hint=recommended, useposix=true, d_sigaction=define
usethreads=undef use5005threads=undef useithreads=undef usemultiplicity=undef
useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
use64bitint=undef use64bitall=undef uselongdouble=undef
usemymalloc=y, bincompat5005=undef
Compiler:
cc='cc', ccflags ='-fno-strict-aliasing -pipe -Wdeclaration-after-statement -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm',
optimize='-Os',
cppflags='-fno-strict-aliasing -pipe -Wdeclaration-after-statement -I/usr/local/include -I/usr/include/gdbm'
ccversion='', gccversion='4.4.4 20100726 (Red Hat 4.4.4-13)', gccosandvers=''
intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234
d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12
ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8
alignbytes=4, prototype=define
Linker and Libraries:
ld='cc', ldflags =' -L/usr/local/lib'
libpth=/usr/local/lib /lib /usr/lib
libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc
perllibs=-lnsl -ldl -lm -lcrypt -lutil -lc
libc=/lib/libc-2.12.so, so=so, useshrplib=true, libperl=libperl.so
gnulibc_version='2.12'
Dynamic Linking:
dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E -Wl,-rpath,/usr/local/lib/perl5/5.8.8/i686-linux/CORE'
cccdlflags='-fpic', lddlflags='-shared -L/usr/local/lib'
Characteristics of this binary (from libperl):
Compile-time options: MYMALLOC PERL_MALLOC_WRAP USE_LARGE_FILES
USE_PERLIO
Built under linux
Compiled at Dec 4 2011 16:39:22
%ENV:
PERL5LIB="/home/dev/perl5/lib/perl5/i686-linux:/home/dev/perl5/lib/perl5"
PERL_LOCAL_LIB_ROOT="/home/dev/perl5"
PERL_MB_OPT="--install_base /home/dev/perl5"
PERL_MM_OPT="INSTALL_BASE=/home/dev/perl5"
@INC:
/home/dev/perl5/lib/perl5/i686-linux
/home/dev/perl5/lib/perl5
/usr/local/lib/perl5/5.8.8/i686-linux
/usr/local/lib/perl5/5.8.8
/usr/local/lib/perl5/site_perl/5.8.8/i686-linux
/usr/local/lib/perl5/site_perl/5.8.8
/usr/local/lib/perl5/site_perl
.发布于 2012-09-10 05:35:37
这不是CentOS附带的perl版本。
从输出来看,您似乎在/usr/local中安装了perl的第二个版本,并且是由天知道的人构建的。它似乎也是perl的一个极简版本。
正如我前面提到的,您确实应该重新开始使用一个CentOS框,它没有被cPanel应用的任何损坏所破坏。只要你使用它,你就会继续遇到难以解决的问题。
无论如何,尝试从您的/usr/local/bin中删除PATH,然后构建程序。这将确保本地安装的Perl不会运行,而系统Perl (工作正常)将被使用。
https://serverfault.com/questions/425843
复制相似问题