mirror of
https://git.linuxfromscratch.org/lfs.git
synced 2025-01-20 05:57:43 +00:00
1987d724ce
git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@1897 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
36 lines
1.7 KiB
XML
36 lines
1.7 KiB
XML
<sect2>
|
|
<title>Why we copy the kernel headers and don't symlink them</title>
|
|
|
|
<para>In the past, it was common practice for people to symlink the
|
|
/usr/include/linux and asm directories to /usr/src/linux/include/linux
|
|
and asm respectively. This is a <emphasis>bad</emphasis> idea as
|
|
this extract from a post by Linus Torvalds to the Linux Kernel
|
|
Mailing List points out:</para>
|
|
|
|
<screen>I would suggest that people who compile new kernels should:
|
|
|
|
- not have a single symbolic link in sight (except the one that the
|
|
kernel build itself sets up, namely the "linux/include/asm" symlink
|
|
that is only used for the internal kernel compile itself)
|
|
|
|
And yes, this is what I do. My /usr/src/linux still has the old 2.2.13
|
|
header files, even though I haven't run a 2.2.13 kernel in a _loong_
|
|
time. But those headers were what glibc was compiled against, so those
|
|
headers are what matches the library object files.
|
|
|
|
And this is actually what has been the suggested environment for at
|
|
least the last five years. I don't know why the symlink business keeps
|
|
on living on, like a bad zombie. Pretty much every distribution still
|
|
has that broken symlink, and people still remember that the linux
|
|
sources should go into "/usr/src/linux" even though that hasn't been
|
|
true in a _loong_ time.</screen>
|
|
|
|
<para>The relevant part here is where he states that the headers should
|
|
be the ones which <emphasis>glibc was compiled against</emphasis>. These are
|
|
the headers which should remain accessible and so by copying them, we ensure
|
|
that we follow these guidelines. Also note that as long as you don't have
|
|
those symlinks, it is perfectly fine to have the kernel sources
|
|
in <filename>/usr/src/linux</filename>.</para>
|
|
|
|
</sect2>
|