Can't find libgcc after building 1.4.1
Jeff Blaine
jblaine at mitre.org
Fri Feb 10 14:06:59 EST 2006
The fix I found just now after building, rebuilding,
re-installing GCCs of various sorts, etc... for days now:
src/config/shlib.conf
Add $(LDFLAGS) to SHLIB_EXPFLAGS
make distclean
rebuild
No more failed library refs for libgcc_s.so.1
Jeff Blaine wrote:
> Reviving an old thread here from August 2005.
>
> http://mailman.mit.edu/pipermail/kerberos/2005-August/008229.html
>
> I continue to have this same problem. At first I thought
> it was a configuration issue on my end. I mistakenly
> read a test on another machine as successful.
>
> Sectioned info below, with what I suspect is the
> problem. Please comment!
>
> ==================================================================
> Solaris 9 SPARC
> MIT Kerberos 1.4.3
>
> GCC 3.2.3 ...or...
> GCC 3.3.2 ...or...
> GCC 3.4.2
>
> GNU ld/binutils 2.14 ...or...
> GNU ld/binutils 2.16.1 ...or...
> Solaris /usr/ccs/bin/ld
>
> The problem seems to stem from building Kerberos into a
> different 'prefix' than where GCC was built for. More
> specifically, the objects created during the build process
> only include runtime linker path information for the
> Kerberos build 'prefix', and do not include anything
> from LDFLAGS.
> ==================================================================
> 1. /export/home is the prefix for GCC
>
> 2. /export/home/lib/libgcc_s.so.1 exists
>
> 3. /export/home/krb5 is the prefix for my desired
> Kerberos build. See the failure below. If I
> use /export/home as the prefix, it all works (but
> is not an acceptable location).
>
> src # CC=/export/home/bin/gcc
> src # export CC
> src # LD=/export/home/bin/ld
> src # export LD
> src # LDFLAGS="-L/export/home/lib -R/export/home/lib"
> src # export LDFLAGS
> src # ./configure --prefix=/export/home/krb5
> src # make; make install
> src # ldd /export/home/krb5/bin/kinit
> libkrb4.so.2 => /export/home/krb5/lib/libkrb4.so.2
> libdes425.so.3 => /export/home/krb5/lib/libdes425.so.3
> libkrb5.so.3 => /export/home/krb5/lib/libkrb5.so.3
> libk5crypto.so.3 => /export/home/krb5/lib/libk5crypto.so.3
> libcom_err.so.3 => /export/home/krb5/lib/libcom_err.so.3
> libkrb5support.so.0 => /export/home/krb5/lib/libkrb5support.so.0
> libresolv.so.2 => /usr/lib/libresolv.so.2
> libsocket.so.1 => /usr/lib/libsocket.so.1
> libnsl.so.1 => /usr/lib/libnsl.so.1
> libc.so.1 => /usr/lib/libc.so.1
> libgcc_s.so.1 => (file not found)
> libgcc_s.so.1 => (file not found)
> libgcc_s.so.1 => (file not found)
> libgcc_s.so.1 => (file not found)
> libgcc_s.so.1 => (file not found)
> libgcc_s.so.1 => (file not found)
> libdl.so.1 => /usr/lib/libdl.so.1
> libmp.so.2 => /usr/lib/libmp.so.2
> /usr/platform/SUNW,Ultra-60/lib/libc_psr.so.1
>
> ==================================================================
> NOTE: "RPATH" and "RUNPATH" below which do not include
> /export/home/lib. This is just one .so as an
> example. They are all like this.
>
> src # dump -Lv /export/home/krb5/lib/libkrb4.so.2
>
> /export/home/krb5/lib/libkrb4.so.2:
>
> **** DYNAMIC SECTION INFORMATION ****
> .dynamic:
> [INDEX] Tag Value
> [1] NEEDED libkrb5.so.3
> [2] NEEDED libcom_err.so.3
> [3] NEEDED libdes425.so.3
> [4] NEEDED libk5crypto.so.3
> [5] NEEDED libgcc_s.so.1
> [6] INIT 0x5704
> [7] FINI 0x5720
> [8] SONAME libkrb4.so.2
> [9] RUNPATH /export/home/krb5/lib
> [10] RPATH /export/home/krb5/lib
> [11] HASH 0x94
> [12] STRTAB 0x1bec
> [13] STRSZ 0x108c
> [14] SYMTAB 0x9bc
> [15] SYMENT 0x10
> [16] CHECKSUM 0xb52c
> [17] VERNEED 0x2c78
> [18] VERNEEDNUM 0x1
> [19] PLTSZ 0x930
> [20] PLTREL 0x7
> [21] JMPREL 0x4dd4
> [22] RELA 0x2c98
> [23] RELASZ 0x2a6c
> [24] RELAENT 0xc
> [25] FEATURE_1 PARINIT
> [26] FLAGS 0
> [27] FLAGS_1 0
> [28] PLTGOT 0x26f84
> src #
>
> ==================================================================
> Shared libs need LDFLAGS too! Note the missing
> -L/export/home/lib -R/export/home/lib in the link
> line below!
>
> building shared krb5support library (0.0)
> ...text deleted...
> + /export/home/bin/gcc -shared -h libkrb5support.so.0 -o
> libkrb5support.so.0.0 threads.so fake-addrinfo.so
> -R/export/home/krb5/lib -lresolv -lsocket -lnsl
> rm -f libkrb5support.so
>
More information about the Kerberos
mailing list