What's the difference between arch-specific header files of uClib and those header files of linux kernel

Dave Dodge dododge at dododge.net
Fri Mar 23 21:39:29 UTC 2007


On Fri, Mar 23, 2007 at 10:49:16PM +0100, Jan-Benedict Glaw wrote:
> On Fri, 2007-03-23 15:16:59 -0500, Dave Dodge <dododge at dododge.net> wrote:
> >   - Statically-linked programs would be seriously broken.  Maybe this
> >     is already the case and I just haven't noticed?
> 
> Due to the syscalls-aren't-ever-removed and syscalls-don't-change
> constraints, static programs should just work.

Okay, that's what I thought.  It sounded like you were originally
saying that existing syscalls (at the kernel-libc boundary) could
vanish or change their APIs on a whim.

I seem to recall that back in the day Sparc/Solaris did break their
kernel-libc boundary from time to time, which meant that applications
needed to dynamically link libc if you wanted them to keep working
after a system update.

> > I think I ran into this myself a few years ago when an application
> > needed futex support that was available (backported) in the kernel
> > but not in libc.
> 
> :-)  This is where the private fun of local helper libraries, own
> header files and _syscallX begins!

It's even more fun when -- as in my futex case -- the vendor's own
manpages documenting their backport and how to call it directly don't
actually match their kernel code >:-/.

                                                  -Dave Dodge



More information about the uClibc mailing list