On Mon, Jun 04, 2001 at 05:49:41PM +0200, Peter Eisentraut wrote:
> Steve M. Robbins writes:
> 
> > I expect that one cannot do so in general.  But I'll take a partial
> > solution, if there is one.  On linux, at least, "ldd libfoo.so" will
> > tell me which other shared objects libfoo links against, so this
> > info is embedded in the shared object.
> 
> If the info is embedded in the shared object then your work is done
> because the dynamic loader will automatically load the dependent libraries
> at run-time.  The case you're concerned about is when this has not been
> done (shame on that package),

Well, I'm seeing a linker failure, e.g.

        /usr/bin/ld: warning: libXext.so.6, needed by /usr/lib/libglut.so, not found 
(try using -rpath or -rpath-link)

I interpret this to mean that the shared objects required by libglut.so
are encoded in it.

The link line includes -L/usr/X11R6/lib, in which libXext.so.6 and
libXext.so.6.4 (to which the former is symbolically linked) are
located.  So I don't understand why the linker won't find libXext.

Are you suggesting that my installation of X11R6 is broken?  Or that
my link line is broken?

The link line, btw, is

        gcc -g -O2 -o Display ... list of .o files ... 
        -L/usr/X11R6/lib -lSM -lICE -lglut -lGL -lGLU -lX11 -lXmu -lm

Thanks for your help,
-Steve

-- 
by Rocket to the Moon,
by Airplane to the Rocket,
by Taxi to the Airport,
by Frontdoor to the Taxi,
by throwing back the blanket and laying down the legs ...
- They Might Be Giants


Reply via email to