Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 10 Dec 2007 14:25:33 -0500
From:      David Schultz <das@FreeBSD.ORG>
To:        Robert Watson <rwatson@FreeBSD.ORG>
Cc:        Brooks Davis <brooks@FreeBSD.ORG>, freebsd-arch@FreeBSD.ORG
Subject:   Re: RFC: libkse*.a in 7.0
Message-ID:  <20071210192533.GA15728@VARK.MIT.EDU>
In-Reply-To: <20071128213947.Q7555@fledge.watson.org>
References:  <20071128211022.GA74762@lor.one-eyed-alien.net> <20071128213947.Q7555@fledge.watson.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Nov 28, 2007, Robert Watson wrote:
> It's worth noting that some other mainstream operating systems work hard to 
> disallow static linking for precisely this sort of reason -- when I last 
> checked, Mac OS X had only one statically linked binary, init, and it may 
> well be that launchd is dynamically linked.  This is part of a very 
> explicit policy that the defined ABI for applications is *not* the system 
> call layer, but rather, the library interfaces, which gives greater 
> flexibility to modify the system call interface as needed.

Solaris has done this for well over a decade, and as a
consequence, they have a stable ABI without adding a bunch of
compat garbage to the kernel. It's mostly done via symbol
versioning in libc and other libraries.

Note that it's possible to *provide* static libraries without
*supporting* them. People can link their apps statically if they
so desire, with the understanding that they will need to recompile
when they upgrade to the next major release of FreeBSD.

Apologies for replying to an old thread. I'm catching up on my email!



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20071210192533.GA15728>