Назад | Перейти на главную страницу

Ошибка компиляции при установке Nominatim

Я пытаюсь установить Nominatim из исходного кода на github. 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: 255

Выход perl -V

Summary 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
    .

Это не та версия perl, которая поставляется с CentOS.

Глядя на результат, кажется, что у вас установлена ​​вторая версия perl в /usr/local и был построен Бог знает кем. Также это выглядит довольно минималистичной версией Perl.

Как я уже упоминал ранее, вам действительно следует начать с коробки CentOS, которая не была повреждена какой-либо поломкой, которую применяет cPanel. Вы воля продолжать сталкиваться с проблемами, которые трудно решить, пока вы им пользуетесь.

В любом случае попробуйте удалить /usr/local/bin от твоего PATH а затем построим программу. Это должно гарантировать, что локально установленный Perl не запустится, а вместо него будет использоваться системный Perl (который работает правильно).