On Wednesday 18 March 2009 13:23:47 Michael P. Soulier wrote:
> Hello,
>
> Looking at what I'm about to pick up via emerge, I notice this
>
> [ebuild     U ] sys-libs/glibc-2.8_p20080602-r1 [2.6.1]
>
> This immediately sets off alarm bells for me, since glibc is the basis of
> the whole system. If I pick this up do I have to rebuild everything?

No, this one is safe. Here's what happens:

You said "glibc is the basis of the whole system". That's not quite true, it's 
actually "glibc provides the C library, which is a collection of basic 
function calls that just about every other program uses sooner or later"

Quite a different thing actually. The interface the glibc presents to the rest 
of the machine doesn't reduce. Everything that your programs used to see, they 
will still see. What might happen is the glibc provides extra stuff, but that 
doesn't matter as your existing compiled programs don't know about it and 
can't use it. A lot like replacing a power outlet in your house - it looks the 
same as the old one so there's no need to buy a new toaster.

If there's an issues, revdep-rebuild will pick them up.

Sometimes, glibc is all fsck'ed up. Like sys-libs/glibc-2.9_p20081201-r1. It 
looks great, till you start firefox and find that it doesn't run anymore...

>
> I've also frozen my kernel at 2.6.25 for now due to the nvidia-drivers
> package. I have to use an older one for 3D accel and it doesn't work with
> the newer kernels according to a bug report I saw. At some point I'm
> assuming that a new glibc will require a new kernel too, if the interface
> changes, so presumably I'll have to update eventually.

No, glibc might need updated kernel headers. The compiler uses them when 
building glibc - the headers tell the compiler what data structures, functions 
etc look like so that the glibc it builds can talk to whatever kernel you 
choose to run later.

The only time you really need to update the kernel headers is if they provide 
some new features you want to take advantage of. The interface that the kernel 
provides to userspace is virtually frozen and Linus simply never changes it.

In short, updating glibc is as safe as updating any other piece of software, 
as long as it has no known major bugs that cause you issues.

-- 
alan dot mckinnon at gmail dot com

Reply via email to