[Gdal-dev] Error compiling on Solaris 10 with GeoExpress SDK

Frank Warmerdam warmerdam at pobox.com
Tue Nov 15 18:56:01 EST 2005


On 11/15/05, Chris Garrard <chrisg at biology.usu.edu> wrote:
> Hello,
>
> I'm trying to compile GDAL 1.3.1 on Solaris 10.  It works great until I
> try and compile in the GeoExpress SDK.  The LizardTech downloads page
> says it works with Solaris 8 and 9 and gcc 3.2.3.  I'm using gcc 3.4.4.
> Has anyone else tried this, or know if the problem is with my compiler
> version or the OS version?
>
> Here is the error I'm getting:
>
> g++ ogrinfo.o -o .libs/ogrinfo  ../.libs/libgdal.so -L/opt/csw/src
> /opt/csw/lib/libproj.so -L/opt/csw/extras/Geo_DSDK-5.0.6.955/lib/Release
> -L/opt/csw/extras/Geo_DSDK-5.0.6.955/3rd-party/lib/Release -lltidsdk
> -lpthread -lltikdu /opt/csw/lib/libjasper.so -ljpeg -lrt -ldl
> -L/opt/csw/lib -L/opt/csw/mysql4/lib/mysql
> /opt/csw/mysql4/lib/mysql/libmysqlclient.so -lz -lposix4 -lc -lgen
> -lsocket -lnsl -lssl -lcrypto -Wl,-R -Wl,/opt/csw/lib -Wl,-R
> -Wl,/opt/csw/mysql4/lib/mysql
> Undefined                       first referenced
>  symbol                             in file
> std::__default_alloc_template<true, 0>::deallocate(void*, unsigned
> int)../.libs/libgdal.so
> std::basic_string<char, std::char_traits<char>, std::allocator<char>
> >::_M_check(unsigned int) const../.libs/libgdal.so
> std::basic_string<char, std::char_traits<char>, std::allocator<char>
> >::_S_empty_rep_storage../.libs/libgdal.so
> std::allocator<char>::allocate(unsigned int, void
> const*)../.libs/libgdal.so
> std::__default_alloc_template<true, 0>::allocate(unsigned
> int)../.libs/libgdal.so
> std::basic_string<char, std::char_traits<char>, std::allocator<char>
> >::_Rep::_S_create(unsigned int, std::allocator<char>
> const&)../.libs/libgdal.so
> ld: fatal: Symbol referencing errors. No output written to .libs/ogrinfo
> collect2: ld returned 1 exit status
> gmake[1]: *** [ogrinfo] Error 1
> gmake[1]: Leaving directory `/opt/csw/extras/gdal-1.3.1/ogr'
> gmake: *** [ogr-apps] Error 2

Chris,

This is a common issue with the GeoExpress SDK.  You
either need to compile with a very close version of the compiler
(ie. gcc 3.2.x) or you need for force linking against multiple
c++ support libraries.  Try searching back for posts from Bill
Binko on how to do this in the gdal-dev mailing list archive.

I always just make sure I use the "right" version of the compiler,
even when I have to build it from source (a bit of a hassle).

Best regards,
--
---------------------------------------+--------------------------------------
I set the clouds in motion - turn up   | Frank Warmerdam, warmerdam at pobox.com
light and sound - activate the windows | http://pobox.com/~warmerdam
and watch the world go round - Rush    | Geospatial Programmer for Rent




More information about the Gdal-dev mailing list