Re: older kernels + new glibc?

From: Richard B. Johnson
Date: Mon Mar 29 2004 - 16:51:24 EST

On Mon, 29 Mar 2004, Lev Lvovsky wrote:

> On Mar 29, 2004, at 1:17 PM, Richard B. Johnson wrote:
> > For glibc compatibility you need to get rid of the sym-link(s)
> > /usr/include/asm and /usr/include/linux in older distributions.
> > You need to replace those with headers copied from the kernel
> > in use when the C runtime library was compiled. If you can't find
> > those, you can either upgrade your C runtime library, or copy
> > headers from some older kernel that was known to work.
> I might be a bit confused here, but the problem with that, is that I'm
> effectively working backwards. I've reverted the kernel version, but
> all other applications have been kept of course - this means that
> though I can keep those sym-links pointing to the correct kernel
> headers (those which were present when glibc was compiled), the current
> kernel (the reverted one) will obviously have different include files.
> In order to compile the modules for the afformentioned hardware, those
> symlinks need to point to the 2.2.x kernel directories - will this
> break functionality of future compiled applications etc?

No No. Never! The modules never, ever, use glibc headers. Never!

The compilation should set the -I (include) parameter to point
to the kernel headers.

Something like:

VER := $(shell uname -r)
INC= -I. -I/usr/src/linux-$(VER)

gcc -c -Wall -O2 -fomit-frame-pointer $(INC) $(DEF) -m module.o module.c

Dick Johnson
Penguin : Linux version 2.4.24 on an i686 machine (797.90 BogoMips).
Note 96.31% of all statistics are fiction.

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at