On Wed, Aug 23, 2006 at 03:33:29PM -0400, Jim Connors wrote:
> 
> Working to create a minimal embedded Solaris configuration.  With a 
> modest investment, it's not too hard to boot a version with a footprint 
> of 50-60MB.  One of the first tasks here is to select only the critical 
> Solaris packages to install.  There are many that have serious issues 
> with Sys V packaging; I'm not one of them however, current Solaris 
> packages are too large (not granular enough) to address the embedded market.
> 
> The end result is that in a 50-60MB config, there's still lots that can 
> be trimmed.  One of the potential candidates is the plethora of shared 
> objects.  I was trying to figure out an automated way to determine which 
> shared objects are not being used.   One such idea was to create script 
> to run ldd(1) on all executables and gather up the referenced so's, and 
> remove those that weren't referenced.  This didn't work.
> 
> Would there by some automated way to determine which shared objects in a 
> system may not be referenced?

Look at the access times of the files?

> Some libraries, notably those that have separate subdirectories under 
> /usr/lib, do not have a version (e.g. .so.1) associated with the .so 
> files.  Are these different?

Generally, they are plugins that are dlopen()ed by various libraries or
applications.

Cheers,
- jonathan

-- 
Jonathan Adams, Solaris Kernel Development

Reply via email to