Re: Error during make when installing geos for postgis install...still trying

From: Mark Cave-Ayland <mark(dot)cave-ayland(at)siriusit(dot)co(dot)uk>
To: Nick <nick(dot)uebelhor(at)noaa(dot)gov>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: Error during make when installing geos for postgis install...still trying
Date: 2010-01-02 09:33:12
Message-ID: 4B3F12D8.6040506@siriusit.co.uk
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Nick wrote:

> Still having problems installing the geos file when trying to install
> postgis...have a printout of errors we are still getting
>
> computer/compiler/postgis info
>
> rhel 5,
>
> gcc-4.1.2-46el14.4.1
>
> postgis1.4.0
>
> below is our process and the errors we are getting, can anyone tell us
> where the issue is?

GEOS requires C++ rather than C, and so you need to install the gcc C++
compiler using yum as several other people have already pointed out.
PostGIS is complaining because it's looking for the geos-config file
installed by GEOS, and so since GEOS hasn't been installed then it isn't
there.

(cut lots)

> [root(at)zoa-project geos-3.2.0]# ./configure
>
> a lot of stuff goes by - no warnings - no errors
>
> [root(at)zoa-project geos-3.2.0]# make
> Making all in build
> make[1]: Entering directory `/usr/local/geos-3.2.0/build'
> Making all in msvc80
> make[2]: Entering directory `/usr/local/geos-3.2.0/build/msvc80'
> Making all in geos_c_dll
> make[3]: Entering directory `/usr/local/geos-3.2.0/build/msvc80/
> geos_c_dll'
> make[3]: Nothing to be done for `all'.
> make[3]: Leaving directory `/usr/local/geos-3.2.0/build/msvc80/
> geos_c_dll'
> Making all in geos_lib
> make[3]: Entering directory `/usr/local/geos-3.2.0/build/msvc80/
> geos_lib'
> make[3]: Nothing to be done for `all'.
> make[3]: Leaving directory `/usr/local/geos-3.2.0/build/msvc80/
> geos_lib'
> Making all in geos_python
> make[3]: Entering directory `/usr/local/geos-3.2.0/build/msvc80/
> geos_python'
> make[3]: Nothing to be done for `all'.
> make[3]: Leaving directory `/usr/local/geos-3.2.0/build/msvc80/
> geos_python'
> Making all in geos_ruby
> make[3]: Entering directory `/usr/local/geos-3.2.0/build/msvc80/
> geos_ruby'
> make[3]: Nothing to be done for `all'.
> make[3]: Leaving directory `/usr/local/geos-3.2.0/build/msvc80/
> geos_ruby'
> Making all in geos_unit
> make[3]: Entering directory `/usr/local/geos-3.2.0/build/msvc80/
> geos_unit'
> make[3]: Nothing to be done for `all'.
> make[3]: Leaving directory `/usr/local/geos-3.2.0/build/msvc80/
> geos_unit'
> Making all in geos_xmltester
> make[3]: Entering directory `/usr/local/geos-3.2.0/build/msvc80/
> geos_xmltester'
> make[3]: Nothing to be done for `all'.
> make[3]: Leaving directory `/usr/local/geos-3.2.0/build/msvc80/
> geos_xmltester'
> make[3]: Entering directory `/usr/local/geos-3.2.0/build/msvc80'
> make[3]: Nothing to be done for `all-am'.
> make[3]: Leaving directory `/usr/local/geos-3.2.0/build/msvc80'
> make[2]: Leaving directory `/usr/local/geos-3.2.0/build/msvc80'
> Making all in msvc90
> make[2]: Entering directory `/usr/local/geos-3.2.0/build/msvc90'
> Making all in geos_c_dll
> make[3]: Entering directory `/usr/local/geos-3.2.0/build/msvc90/
> geos_c_dll'
> make[3]: Nothing to be done for `all'.
> make[3]: Leaving directory `/usr/local/geos-3.2.0/build/msvc90/
> geos_c_dll'
> Making all in geos_lib
> make[3]: Entering directory `/usr/local/geos-3.2.0/build/msvc90/
> geos_lib'
> make[3]: Nothing to be done for `all'.
> make[3]: Leaving directory `/usr/local/geos-3.2.0/build/msvc90/
> geos_lib'
> Making all in geos_python
> make[3]: Entering directory `/usr/local/geos-3.2.0/build/msvc90/
> geos_python'
> make[3]: Nothing to be done for `all'.
> make[3]: Leaving directory `/usr/local/geos-3.2.0/build/msvc90/
> geos_python'
> Making all in geos_ruby
> make[3]: Entering directory `/usr/local/geos-3.2.0/build/msvc90/
> geos_ruby'
> make[3]: Nothing to be done for `all'.
> make[3]: Leaving directory `/usr/local/geos-3.2.0/build/msvc90/
> geos_ruby'
> Making all in geos_unit
> make[3]: Entering directory `/usr/local/geos-3.2.0/build/msvc90/
> geos_unit'
> make[3]: Nothing to be done for `all'.
> make[3]: Leaving directory `/usr/local/geos-3.2.0/build/msvc90/
> geos_unit'
> Making all in geos_xmltester
> make[3]: Entering directory `/usr/local/geos-3.2.0/build/msvc90/
> geos_xmltester'
> make[3]: Nothing to be done for `all'.
> make[3]: Leaving directory `/usr/local/geos-3.2.0/build/msvc90/
> geos_xmltester'
> make[3]: Entering directory `/usr/local/geos-3.2.0/build/msvc90'
> make[3]: Nothing to be done for `all-am'.
> make[3]: Leaving directory `/usr/local/geos-3.2.0/build/msvc90'
> make[2]: Leaving directory `/usr/local/geos-3.2.0/build/msvc90'
> Making all in msvc10
> make[2]: Entering directory `/usr/local/geos-3.2.0/build/msvc10'
> Making all in geos_c_dll
> make[3]: Entering directory `/usr/local/geos-3.2.0/build/msvc10/
> geos_c_dll'
> make[3]: Nothing to be done for `all'.
> make[3]: Leaving directory `/usr/local/geos-3.2.0/build/msvc10/
> geos_c_dll'
> Making all in geos_lib
> make[3]: Entering directory `/usr/local/geos-3.2.0/build/msvc10/
> geos_lib'
> make[3]: Nothing to be done for `all'.
> make[3]: Leaving directory `/usr/local/geos-3.2.0/build/msvc10/
> geos_lib'
> Making all in geos_unit
> make[3]: Entering directory `/usr/local/geos-3.2.0/build/msvc10/
> geos_unit'
> make[3]: Nothing to be done for `all'.
> make[3]: Leaving directory `/usr/local/geos-3.2.0/build/msvc10/
> geos_unit'
> Making all in geos_xmltester
> make[3]: Entering directory `/usr/local/geos-3.2.0/build/msvc10/
> geos_xmltester'
> make[3]: Nothing to be done for `all'.
> make[3]: Leaving directory `/usr/local/geos-3.2.0/build/msvc10/
> geos_xmltester'
> make[3]: Entering directory `/usr/local/geos-3.2.0/build/msvc10'
> make[3]: Nothing to be done for `all-am'.
> make[3]: Leaving directory `/usr/local/geos-3.2.0/build/msvc10'
> make[2]: Leaving directory `/usr/local/geos-3.2.0/build/msvc10'
> make[2]: Entering directory `/usr/local/geos-3.2.0/build'
> make[2]: Nothing to be done for `all-am'.
> make[2]: Leaving directory `/usr/local/geos-3.2.0/build'
> make[1]: Leaving directory `/usr/local/geos-3.2.0/build'
> Making all in source
> make[1]: Entering directory `/usr/local/geos-3.2.0/source'
> Making all in algorithm
> make[2]: Entering directory `/usr/local/geos-3.2.0/source/algorithm'
> Making all in locate
> make[3]: Entering directory `/usr/local/geos-3.2.0/source/algorithm/
> locate'
> make[4]: Entering directory `/usr/local/geos-3.2.0/source/algorithm/
> locate'
> source='IndexedPointInAreaLocator.cpp'
> object='IndexedPointInAreaLocator.lo' libtool=yes \
> DEPDIR=.deps depmode=none /bin/sh ../../../depcomp \
> /bin/sh ../../../libtool --tag=CXX --mode=compile g++ -
> DHAVE_CONFIG_H -I. -I../../../source/headers -I../../../source/headers/
> geos -I../../../source/headers -DGEOS_INLINE -pedantic -Wall -
> ansi -Wno-long-long -ffloat-store -c -o IndexedPointInAreaLocator.lo
> IndexedPointInAreaLocator.cpp
> libtool: compile: g++ -DHAVE_CONFIG_H -I. -I../../../source/headers -
> I../../../source/headers/geos -I../../../source/headers -DGEOS_INLINE -
> pedantic -Wall -ansi -Wno-long-long -ffloat-store -c
> IndexedPointInAreaLocator.cpp -o .libs/IndexedPointInAreaLocator.o
> ../../../libtool: line 990: g++: command not found
> make[4]: *** [IndexedPointInAreaLocator.lo] Error 1
> make[4]: Leaving directory `/usr/local/geos-3.2.0/source/algorithm/
> locate'
> make[3]: *** [all-recursive] Error 1
> make[3]: Leaving directory `/usr/local/geos-3.2.0/source/algorithm/
> locate'
> make[2]: *** [all-recursive] Error 1
> make[2]: Leaving directory `/usr/local/geos-3.2.0/source/algorithm'
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory `/usr/local/geos-3.2.0/source'
> make: *** [all-recursive] Error 1
> [root(at)zoa-project geos-3.2.0]#

Again - you can't build GEOS because you don't have a C++ compiler
installed on your system. The geos-config file in the tools/
subdirectory is a special pre-generated one for people building using MSVC.

Also it looks as if you've extracted the geos-3.2.0.tar.bz2 file in
/usr/local which is wrong - /usr/local is the *target* i.e. where the
resulting files will be copied to when they have been built. You should
extract the file in a separate location, perhaps somewhere in your home
directory.

> Don't mean to keep asking the same question over and over, I'm new at
> this. Happy New Year, mine would be much happier if I could have this
> all installed now!!

From what you've reported, it does seem that you're struggling somewhat
with the build process. I would second the suggestion that you add the
yum.pgsqlrpms.org repository as pointed out earlier in this thread and
then simply use your normal package management tool to do the work for you.

ATB,

Mark.

--
Mark Cave-Ayland - Senior Technical Architect
PostgreSQL - PostGIS
Sirius Corporation plc - control through freedom
http://www.siriusit.co.uk
t: +44 870 608 0063

Sirius Labs: http://www.siriusit.co.uk/labs

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Dimitri Fontaine 2010-01-02 10:41:01 Re: Visual DATA editor for PostgreSQL?
Previous Message Roman Neuhauser 2010-01-02 08:40:42 Re: set-level update fails with unique constraint violation