Matthew Schalit wrote:
> 
> David Douthitt wrote:
> >
> > Does anyone have a really good understanding of what each system library
> > (found in /lib/lib* and /usr/lib/lib*) is for?
> >
> > I'm still trying to get a good idea of libraries such as libresolv,
> > libdb, libdl, libnsl, ...
> >
> > I think that:

> > * libnsl appears to be something related to NIS (can be removed??)
> 
> NIS is only part of it.  RPC is in there too, and so is cs and so
> are network directory services and some xti stuff too.  It's called
> the Network Sevices Library and contains many functions that are used
> by various transport protocols.

Without portmapper, RPC and NIS are useless, right?  What is CS? XTI? 
And I thought "network directory services" was taken care of by DNS,
libresolv, and libnss*..?

> > * libdb is.... what?  (it's part of glibc...)
> 
> Libdb is the Berkeley DB database functions that are now maintained
> by Sleepycat Software at http://www.sleepycat.com/
> dbopen(), dbhash(), weird stuff like that, often used with mysql.

Do LRP-based systems really need this one?  What would break if it was
gone?

> > * libuuid (a part of e2fsprogs) seems to be some sort of utilities for
> > e2fs; can this be removed?
> 
> Utilities for managing ext2 filesystem.

So if libuuid was missing it wouldn't matter?  At least, if there is no
e2fs filesystems to be had...

> > Can someone help out here?
> 
> I usually just nm the library and look at the functions or
> check out the header file.  I apologize for not being able
> to provide details about how needed these are to Linux, though.

I finally started figuring out nm and objdump - but I'm still trying to
figure out how to read their output.  The help files (man page, info
pages, Linux howtos) all talk in terms of "header files" when what I
really wanted was an answer to this question: "What functions does this
library provide to other binary programs?"

It looks like a proper reading of nm and objdump will answer this...

> I figured at some point, developers would be stripping the necessary
> functions out of the libraries to make them smaller.

Dave already did that with libncurses - but first thing I did was put
full ncurses back in :-)

How do you go about stripping libraries anyway?  If libnsl is necessary
it would be a good candidate, as NIS and RPC can be ripped out...

_______________________________________________
Leaf-devel mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/leaf-devel

Reply via email to