[gdal-dev] Error in libjasper.a during 'make' in gdal 1.5.2: relocation R_X86_64_32 against `a local symbol' can not be used

Patton, Eric epatton at nrcan.gc.ca
Fri Sep 12 11:14:05 EDT 2008

>Try rebuilding jasper as:
>  export CFLAGS="-fPIC"
>  ./configure --prefix=/usr/local
>  make; make install
>  unset CFLAGS
>Then rebuild gdal as usual.
>On our 64-bit systems we also compile gdal and related libraries (geos,
>jasper, etc.) with "-m64" in the compiler flags environment variable
>(CFLAGS and CXXFLAGS for jasper and geos/gdal, respectively).  Not sure if
>you'll need to do this.
>Good luck.

Thanks for the hints. I tried rebuilding jasper with CFLAGS="-fPIC -m64" and rebuilding gdal with CXXFLAGS="-fPIC -m64", with no luck; the failed output from the gdal build is below.

/usr/bin/ld: /usr/lib/libstdc++.a(functexcept.o): relocation R_X86_64_32 against `vtable for std::exception' can not be used when making a shared object; recompile with -fPIC
/usr/lib/libstdc++.a: could not read symbols: Bad value
collect2: ld returned 1 exit status
make[1]: *** [libgdal.la] Error 1
make[1]: Leaving directory `/usr/local/gdal-1.5.2'
make: *** [check-lib] Error 2

Curious how it is prompting recompiling with -fPIC, as I've done that. Any other ideas?

~ Eric.

More information about the gdal-dev mailing list