Does GNU emacs ever use shared libraries?

Michael McNamara mac at mrk.ardent.com
Sat May 13 05:42:25 AEST 1989


In article <TALE.89May12023656 at imagine.pawl.rpi.edu> tale at pawl.rpi.edu writes:
|In article <152 at talarian.UUCP> scott at talarian.UUCP (Scott Weitzenkamp) writes:
|>   I noticed that on SunOS 4.0, GNU emacs uses the -Bstatic flag to cc
|> to prevent the use of shared libraries.  Does GNU emacs ever use 
|> shared libraries?  If not, why not? 
|
|Two reasons that I can think of:
|
|a) debugging is hell on something link edited with shared libraries.
	can be done.
|
|b) loadup is slower (often times perceptibly, not just some sort of
|unnoticeable benchmark thing) when using shared libraries.
	not really.
|
|I am pretty certain that it _can_ be compiled with the libraries (ie,
|what should prevent it, code-wise), but it isn't.  The primary
|argument for using them is to cut down on size of the application, but
|the subsequent loss of debugging power and load-up time outweighs that
|consideration as long as you have the space on your system.
|
|Dave
|--
|      tale at rpitsmts.bitnet, tale%mts at itsgw.rpi.edu, tale at pawl.rpi.edu


	Yes gnu-emacs can be compiled with and using shared libraries
on system V.  I did the port for the cydra 5 (when cydrome was still
in business).  
	The real reason GNU-emacs is distributed with -Bstatic on Sun
4.0 is because no one wanted to fix unexec to understand shared
libraries.
	However, it is definatly possible to make unexec work with
shared libraries.  
	It is also possible to work around unexec in
another way: David Robinson, at NASA Ames, has distributed diffs for
gnu-emacs that:

"Below are the diffs to 18.53 to implent GNU emacs under SunOS 4.0 using
mmap() instead of unexec() and to also allow for shared libraries.

A couple of installation notes,  after temacs finishes preloading 
the lisp code it dumps the output into "xemacs.map" in the current
directory.  This file must be renamed to PATH_EXEC/emacs.map for normal
use.  If you wish to test the code out without moving the map
file you can run "xemacs -map xemacs.map" for testing. Included in
diff format are two new files, s-sunos4map.h and sunmap.c, if you
are using "patch" they should be extracted with no problem.  If
you don't have patch (hard to believe) you can simply cut and
paste them."

	You should send mail to David, as he has been working on this
and I am sure has newer versions that what I have.

	He can be reached at: david at ames.arc.nasa.gov

	-mac
_________________
Michael McNamara 
  mac at ardent.com 



More information about the Comp.unix.questions mailing list