This is the mail archive of the guile@cygnus.com mailing list for the guile project.
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
>>>>> "John" == John Tobey <jtobey@channel1.com> writes:
>> On several platforms, unexec and dynamic loading cannot live
>> together.
John> Why not? If you mean that pointers need to be relocated and
John> there's no telling what's a pointer and what isn't, I
John> suggest we try harder.
John> I'm glad you made the claim it can't be done, 'cause now I'm
John> gonna try and prove that it __can__.
Why can `XEmacs' and `emacs' do it then? They are dynamicly
linked... to a pile of shared object libraries.
The newest XEmacs are also compiled with the malloc from GNU Libc,
(dlmalloc), rather than the gmalloc that's in the guile-unexec
tarfile. I gather that this was a feat worth accomplishing, that the
`dlmalloc' is superiour. I don't have the skills to find out or
understand how it works yet, though I'm gaining on it turtlishly.
ldd =xemacs
libXaw.so.6 => /usr/X11R6/lib/neXtaw/libXaw.so.6 (0x40012000)
libcompface.so.1 => /usr/lib/libcompface.so.1 (0x40068000)
libtiff.so.3 => /usr/lib/libtiff.so.3 (0x40073000)
libpng.so.2 => /usr/lib/libpng.so.2 (0x400ab000)
libjpeg.so.6a => /usr/lib/libjpeg.so.6a (0x400d6000)
libz.so.1 => /usr/lib/libz.so.1 (0x400f4000)
libXpm.so.4 => /usr/X11R6/lib/libXpm.so.4 (0x40103000)
libXmu.so.6 => /usr/X11R6/lib/libXmu.so.6 (0x40111000)
libXt.so.6 => /usr/X11R6/lib/libXt.so.6 (0x40123000)
libXext.so.6 => /usr/X11R6/lib/libXext.so.6 (0x4016b000)
libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x40177000)
libSM.so.6 => /usr/X11R6/lib/libSM.so.6 (0x4021b000)
libICE.so.6 => /usr/X11R6/lib/libICE.so.6 (0x40224000)
libdl.so.2 => /lib/libdl.so.2 (0x4023a000)
libdb.so.2 => /lib/libdb.so.2 (0x4023d000)
libgdbm.so.1 => /usr/lib/libgdbm.so.1 (0x4024b000)
libgpm.so.1 => /usr/lib/libgpm.so.1 (0x40251000)
libncurses.so.3.4 => /lib/libncurses.so.3.4 (0x40257000)
libm.so.6 => /lib/libm.so.6 (0x4029c000)
libc.so.6 => /lib/libc.so.6 (0x402b5000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)