[geos-devel] [GEOS] #222: GEOS 3.0 won't link on ARM-EABI platform

GEOS geos-trac at osgeo.org
Thu Dec 18 11:55:28 EST 2008


#222: GEOS 3.0 won't link on ARM-EABI platform
-----------------------+----------------------------------------------------
 Reporter:  jcrepetto  |       Owner:  geos-devel at lists.osgeo.org
     Type:  defect     |      Status:  new                       
 Priority:  major      |   Milestone:  3.0.1                     
Component:  Default    |     Version:  3.0.0                     
 Severity:  Critical   |    Keywords:                            
-----------------------+----------------------------------------------------
 I am trying to compile geos-3.0.3 for the ARM architecture. I am using
 GCC 4.2.1 and GLIBC 2.5, the toolchain can be freely downloaded at
 [http://www.codesourcery.com/gnu_toolchains/arm/portal/release313].

 I have used the following commands :

 {{{
 ./configure --host=arm-none-linux-gnueabi --prefix=/home/jcr/arm-2007q3
 make
 }}}

 All the files are compiled, but there is a problem with linking :

 {{{
 /bin/sh ../libtool --tag=CXX --mode=link arm-none-linux-gnueabi-g++  -g
 -O2 -DGEOS_INLINE -Wall -ansi -pedantic -Wno-long-long   -o libgeos.la
 -rpath /home/jcr/arm-2007q3/lib -release 3.0.3 -no-undefined
 inlines.lo algorithm/libalgorithm.la geom/libgeom.la
 geomgraph/libgeomgraph.la index/libindex.la io/libio.la
 noding/libnoding.la operation/liboperation.la
 planargraph/libplanargraph.la precision/libprecision.la
 simplify/libsimplify.la util/libutil.la
 arm-none-linux-gnueabi-g++ -shared -nostdlib
 /home/jcr/arm-2007q3/bin/../arm-none-linux-gnueabi/libc/usr/lib/crti.o
 /home/jcr/arm-2007q3/bin/../lib/gcc/arm-none-linux-
 gnueabi/4.2.1/crtbeginS.o
  .libs/inlines.o -Wl,--whole-archive algorithm/.libs/libalgorithm.a
 geom/.libs/libgeom.a geomgraph/.libs/libgeomgraph.a
 index/.libs/libindex.a io/.libs/libio.a noding/.libs/libnoding.a
 operation/.libs/liboperation.a planargraph/.libs/libplanargraph.a
 precision/.libs/libprecision.a simplify/.libs/libsimplify.a
 util/.libs/libutil.a -Wl,--no-whole-archive
 -L/home/jcr/arm-2007q3/bin/../lib/gcc/arm-none-linux-gnueabi/4.2.1
 -L/home/jcr/arm-2007q3/bin/../lib/gcc
 -L/home/jcr/arm-2007q3/bin/../lib/gcc/arm-none-linux-
 gnueabi/4.2.1/../../../../arm-none-linux-gnueabi/lib
 -L/home/jcr/arm-2007q3/bin/../arm-none-linux-gnueabi/libc/lib
 -L/home/jcr/arm-2007q3/bin/../arm-none-linux-gnueabi/libc/usr/lib
 -lstdc++ -lm -lc -lgcc_s
 /home/jcr/arm-2007q3/bin/../lib/gcc/arm-none-linux-gnueabi/4.2.1/crtendS.o
 /home/jcr/arm-2007q3/bin/../arm-none-linux-gnueabi/libc/usr/lib/crtn.o
  -Wl,-soname -Wl,libgeos-3.0.3.so -o .libs/libgeos-3.0.3.so
 noding/.libs/libnoding.a(MCIndexSnapRounder.o):(.data.rel.ro+0x0):
 multiple definition of `vtable for
 geos::noding::snapround::MCIndexSnapRounder'
 .libs/inlines.o:(.data.rel.ro+0x0): first defined here
 noding/.libs/libnoding.a(MCIndexSnapRounder.o): In function `.LANCHOR1':
 MCIndexSnapRounder.cpp:(.rodata+0xdc): multiple definition of `typeinfo
 name for geos::noding::snapround::MCIndexSnapRounder'
 .libs/inlines.o:inlines.cpp:(.rodata+0x338): first defined here
 noding/.libs/libnoding.a(MCIndexSnapRounder.o):(.data.rel.ro+0x18):
 multiple definition of `typeinfo for
 geos::noding::snapround::MCIndexSnapRounder'
 .libs/inlines.o:(.data.rel.ro+0xb0): first defined here
 collect2: ld returned 1 exit status
 }}}

-- 
Ticket URL: <http://trac.osgeo.org/geos/ticket/222>
GEOS <http://geos.refractions.net/>
GEOS (Geometry Engine - Open Source) is a C++ port of the Java Topology Suite (JTS).


More information about the geos-devel mailing list