Subject: Dynamic Libraries Problem?
To: None <port-pmax@NetBSD.ORG>
From: Gregory McGarry <g.mcgarry@qut.edu.au>
List: port-pmax
Date: 10/09/1997 12:09:49
This is all happening on a couple week old build.

# ldd /usr/bin/vi 
/usr/bin/vi:
         -lcurses.2 => /usr/lib/libcurses.so.2
         -ltermcap.0 => /usr/lib/libtermcap.so.0
         -lc.12 => /usr/lib/libc.so.12

This is correct and vi works fine.  However,

# ldd /usr/X11R6/bin/xload
/usr/X11R6/bin/xload:
         -lXaw.6 => not found
         -lXmu.6 => not found
         -lXt.6 => not found
         -lSM.6 => not found
         -lICE.6 => not found
         -lXext.6 => not found
         -lX11.6 => not found
         -lc.12 => /usr/lib/libc.so.12

does not look good, however xload also runs fine.

I'm trying to compile my X application which requires Mofif.  I grabbed
a copy of lesstif 0.81, which it says in the docs has compiled and
run successfully on NetBSD 1.2.1 on m68k and sparc.  It also compiles
successfully on pmax:

# ldd lesstif-0.81/test/Xm/scrollbar/test2
test2:
         -lXm => /usr/local/lib/libXm.so
         -lXt.6 => not found
         -lX11.6 => not found
         -lXext.6 => not found
         -lSM.6 => not found
         -lICE.6 => not found
         -lm.0 => /usr/lib/libm.so.0
         -lc.12 => /usr/lib/libc.so.12

However, upon execution:

# lesstif-0.81/test/Xm/scrollbar/test2
test2: can't load library 'libXm.so'

And have a look at what ldconfig has done:

/usr/lib:
        libamu.so.0 => libamu.so.0.0
        ...
        libc.so.12 => libc.so.12.17
/usr/X11R6/lib:
        libXext.so.6 => libXext.so.6.3
        libSM.so.6 => libSM.so.6.0
        libICE.so.6 => libICE.so.6.3
        libX11.so.6 => libX11.so.6.1
        libXt.so.6 => libXt.so.6.0
        ...
/usr/local/lib:
        libMrm.so.0.81 => libMrm.so.0.81         <----
        libUil.so.0.81 => libUil.so.0.81         <----
        libXm.so.0.81 => libXm.so.0.81           <----

So, /usr/X11R6/lib libraries all exist, ld.so can find them but
ldd can't.  And why can't either ld.so nor ldconfig understand the
symbolic links for libXm etc?

# ls -la /usr/local/lib

lrwxr-xr--   1 root  wheel  libMrm.so -> /usr/local/lib/libMrm.so.0.81
-rw-r--r--   1 root  wheel  libMrm.so.0.81
-rw-r--r--   1 root  wheel  libUil.a
lrwxr-xr--   1 root  wheel  libUil.so -> /usr/local/lib/libUil.so.0.81
-rw-r--r--   1 root  wheel  libUil.so.0.81
-rw-r--r--   1 root  wheel  libXm.a
lrwxr-xr--   1 root  wheel  libXm.so -> /usr/local/lib/libXm.so.0.81
-rw-r--r--   1 root  wheel  libXm.so.0.81

Am I missing something simple?  Is it a lesstif specific problem?

Regards,
Greg