Linux wiki

Where Are linux/*.h and asm/*.h?

The files /usr/include/linux/ and /usr/include/asm/ are often soft links to the directories where the kernel headers are. They are usually under /usr/src/kernel*/.

If you don't have the kernel sources, download them. Refer to the answer for How To Upgrade/Recompile a Kernel.

Then, use rm to remove any garbage, and ln to create the links:

 $ rm -rf /usr/include/linux /usr/include/asm
 $ ln -sf /usr/src/linux/include/linux /usr/include/linux
 $ ln -sf /usr/src/linux/include/asm-<architecture> /usr/include/asm

The assembly language files reside in architecture-specific directories, so you need to link /usr/src/include/asm to /usr/src/linux/include/asm-i386 on PC compatible systems, to /usr/src/linux/include/asm-sparc on Sun Sparc systems, to /usr/src/linux/include/asm-ppc on PPC systems, and so on.

You'll also find that you may need to do "make config" as in a newly-unpacked kernel source tree, to create linux/autoconf.h.

How Do I Set the Boot-Time Configuration?
How Do I Undelete Files?

 

See our index for more reviews

Write a review and win an Apple Ipod

Page

New
Edit
Rename
Attachments
Versions

Site

Changes
Index
Search

User

Log In

 
 

Last Modified 2004-07-03