Martin Buchholz <martin(a)xemacs.org> wrote:
There is no libXp in my OpenMotif 2.1.30 installed on Linux.
Yes, but your copy of OpenMotif references libXp -- see below.
If motif/lib/Xm/PrintS.c was supposed to contribute to libXp.so, why
isn't it in motif/lib/Xp/PrintS.c ?
You have it backwards (or maybe I'm misunderstanding your
english). There are new (?) Motif print routines in OpenMotif, and
these routines call functions in the X print library (libXp).
(martin@lasker) /usr/local/dt/lib $ ldd libXm.so
libXt.so.6 => /usr/X11R6/lib/libXt.so.6 (0x401b5000)
libSM.so.6 => /usr/X11R6/lib/libSM.so.6 (0x401ff000)
libICE.so.6 => /usr/X11R6/lib/libICE.so.6 (0x40208000)
libXp.so.6 => /usr/X11R6/lib/libXp.so.6 (0x4021e000)
^^^^^^^^^^
Huh? This looks like libXp to me.
Hmmm. I'm not very familiar with Linux. Does Linux have some kind
of deferred linking, where symbols in shared libraries are not resolved
at link time but at runtime, instead?
[ Oh. Ah. If I recall correctly, FreeBSD 3.X (which Kasahara-san is
using), did not have deferred linking; all symbols in all libraries
had to be resolved (must exist and be found) at link time. FreeBSD
4.X (and probably Linux) use deferred linking, where symbols in shared
libraries aren't checked and resolved until runtime (this means that
unresolved symbols like XpStartPage would cause a core dump at runtime
if the symbol could not be found). This is probably what you're
seeing. I'd bet that your XEmacs would dump core if it tried to
reference a Motif print function (which references libXp, which
doesn't exist on your system). This probably means that someone
(you?) will have to change configure to check for libXp on those
systems for which deferred linking is not used. ]
[ P.S. -- I'm not sure if the correct term is really "deferred linking",
but that's what I've been calling it. ]
--
Darryl Okahata
darrylo(a)soco.agilent.com
DISCLAIMER: this message is the author's personal opinion and does not
constitute the support, opinion, or policy of Agilent Technologies, or
of the little green men that have been following him all day.