[comp.sys.sun] Shared libraries

tb@bilbo.informatik.uni-dortmund.de (Torsten Beyer) (12/21/89)

Does anybody outthere know how I can replace Routines in a shared library
?  We would like to remove Suns gethost* Routines and replaces these with
resolver-routines (Yes, I know that I can ftp such libraries at uunet, but
as far as I know these libraries are 4.0 libs not 4.03. So all 4.0 bugs
are still not fixed in these libs). Next thing I would like to know ist
how I can create a .sa file from the shared library.

			thanx in advance
				-Torsten

Torsten Beyer                               e-mail : tb@unido.uucp
University of Dortmund,IRB                           ..uunet!unido!tb
P.O.Box 500500	                            BITNET : tb@ddoinf6.bitnet
D-4600 Dortmund 50,  West Germany           voice  : +49 231 7552422

jp@csc000.csc.ti.com (Joe Picone) (03/16/91)

I would like to know what good/bad experiences users have had with shared
libraries? Are they appropriate for a research environment using C++ that
consists of lots of single user workstations and a central compute server?
Any serious performance hits? (Obviously, there are benefits at the OS
level for commonly-used commands.)

I currently have a set of 10 libraries distributed something like this:

	Size:   205896        Heavy	(All programs)
	Size:    97576 		^
	Size:   732310 		|
	Size:   145356 		|
	Size:    45406 	      Usage
	Size:   668680 		|
	Size:   117300 		|
	Size:    46164 		|
	Size:    83052 		v
	Size:   125960 	      Light	(Few programs)

and about  100 utilities that  are run  infrequently  (a few times per
day).  It seems to me the  main benefit is  to put  heavily  used stuff in
a shared library and leave  the other stuff  in a standard library. I am
worried about large programs having  to resolve hundreds of references at
run-time and requiring a long time to startup and  large amounts of
memory.

Regards,
Joe Picone  ("The Terminal Man")
Arpanet Address: JP@CSC.TI.COM

mjh@cs.vu.nl (Maarten J Huisjes) (03/22/91)

Is there a way to convert executables that are linked with shared
libraries (to be loaded by ld.so when executing) into executables that do
not use shared libraries (eg. with all library references resolved and the
used lib functions loaded in the executable) ?  If so, does there exists a
program that performs this task ?