Adrian Bunk <bunk@xxxxxxxxx> writes: > On Sun, May 02, 2004 at 05:35:28PM -0600, llewelly@xxxxxxxxxxxx wrote: > > Adrian Bunk <bunk@xxxxxxxxx> writes: > > > > > Hi, > > > > > > if the following problem is a RTFM, I'd be glad if someone could give me > > > a pointer to the corresponting "M".... > > > > > > I have the following problem when building gcc 3.3.3 or 3.4.0 on a > > > sparc-unknown-netbsdelf1.5 system: > > > > > > The build works fine, using > > > ../configure > > > make bootstrap > > > but the binary doesn't run: > > > > > > <-- snip --> > > > > > > $ ./gcc > > > Shared object "libintl.so.5" not found > > > $ objdump -p gcc > > > ... > > > Dynamic Section: > > > NEEDED libintl.so.5 > > > NEEDED libiconv.so.4 > > > NEEDED libc.so.12 > > > INIT 0x10de0 > > > ... > > > > > > <-- snip --> > > > > > > libintl and libiconv are in /usr/local/lib. > > > > > > LDFLAGS="-L/usr/local/lib -R/usr/local/lib" ../configure > > > didn't work > > > > > > LD_LIBRARY_PATH=/usr/local/lib ./gcc > > > works but isn't optimal. > > > > > > It might be very simple, but I don't find the solution myself... > > [snip] > > > > You have 3 alternatives; > > > > (0) build gcc staticly linked, > > Can I link only libintl and libiconv (but not libc) statically? > If yes, how? I don't think this can be done without serious hacking of the gcc configure and build system. You might try setting LDFLAGS to '/usr/local/libintl.a /usr/local/libiconv.a' before running configure, but I don't think that will work. > > > (1) use LD_LIBRARY_PATH, > > That's what I want to avoid, e.g. because this sometimes makes it > non-trivial to compile other software. I forgot to mention that you could also use LD_PRELOAD, but that has a similar disadvantage. But LD_PRELOAD allows you to list only specific libraries, instead of whole directories. Maybe a wrapper script using LD_PRELOAD or LD_LIBRARY_PATH would be appropriate.