G4 relocation errors
Joseph E. Sacco, Ph.D.
joseph_sacco at comcast.net
Fri Jan 14 12:15:41 MST 2005
The relocation errors are the result of mixing position-independent-code
with non-position-independent-code in a shared library. The "fix" is to
rebuild the library making sure that each and every file is compiled
"-fPIC".
Once upon a time only PIC code could be used to construct a shared
library. While this is no longer true, it is still the safest thing to
do.
-Joseph
================================================================================
On Tue, 2005-01-11 at 10:05, Brad Douglas wrote:
> Hello,
>
> I have recently installed YDL 4.0 (with updates) and I have had some
> interesting issues compiling software.
>
> With libgeotiff, I get a relocation error on 'strcmp' and with OGDI, I
> get relocation errors with 'strlen'.
>
> My guess is that this has something to do with 32/64. GCC and/or glibc?
>
> Here's some output from libgeotiff:
>
> [brad at anisotropy brad]$ uname -rm
> 2.6.9-1.ydl.8 ppc
>
> [brad at anisotropy]$ gdalinfo
> gdalinfo: error while loading shared libraries:
> /opt/gis/lib/libgeotiff.so: R_PPC_REL24 relocation at 0x0f68b06c for
> symbol `strcmp' out of range
>
> [brad at anisotropy]$ nm /opt/gis/lib/libgeotiff.so.1.2.2 | grep 'U '
> U TIFFClientOpen
> U TIFFClose
> U TIFFFdOpen
> U TIFFGetField
> U TIFFMergeFieldInfo
> U TIFFOpen
> U TIFFSetField
> U TIFFSetTagExtender
> U _TIFFfree
> U _TIFFmalloc
> U _TIFFmemcpy
> U _TIFFmemset
> U _TIFFrealloc
> U __assert_fail
> U __strdup
> U __strtod_internal
> U __strtol_internal
> U abort
> U fclose
> U fgets
> U fopen
> U fprintf
> U free
> U fscanf
> U pj_free
> U pj_fwd
> U pj_init
> U pj_inv
> U sprintf
> U sscanf
> U stderr
> U stdin
> U stdout
> U strcasecmp
> U strcat
> U strchr
> U strcmp
> U strcpy
> U strlen
> U strncmp
> U strstr
> U vsprintf
> [brad at anisotropy]$
>
> On an unrelated note, I also get the following error in R when trying to
> calculate Kappa coefficients. Either this is related to the above
> errors or LAPACK is broken (or perhaps something else I haven't thought
> of yet :):
>
> > kappa(h9, exact = TRUE) == max(sv9) / min(sv9)
> Error in La.svd(x, nu, nv) : LAPACK routine DGEBRD gave error code -10
>
>
> Any suggestions for correcting these problems would be greatly
> appreciated. Thanks!
>
>
> - Brad Douglas
>
>
> _______________________________________________
> yellowdog-general mailing list
> yellowdog-general at lists.terrasoftsolutions.com
> http://lists.terrasoftsolutions.com/mailman/listinfo/yellowdog-general
> HINT: to Google archives, try '<keywords> site:terrasoftsolutions.com'
--
joseph_sacco[at]comcast[dot]net
More information about the yellowdog-general
mailing list