linux/*.h and asm/*.h?" /> linux/*.h and asm/*.h?" /> linux/*.h and asm/*.h?" />
oreilly.comSafari Books Online.Conferences.
BooksAll ArticlesSafari BookshelfO'Reilly GearFree Newsletters

Apache FAQ
Linux FAQ

Log in to particpate


   Linux FAQ > 6. Porting, Compiling and Obtaining Programs
Question:  6.9. 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: ("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 /usr/include/asm

/usr/src/linux/include/asm/ is a symbolic link to an architecture-specific asm directory. If you have a freshly unpacked kernel source tree, you must make symlinks. You'll also find that you may need to do `make config' in a newly-unpacked kernel source tree, to create linux/autoconf.h.

This FAQ is from Linux Frequently Asked Questions with Answers, maintained by Robert Kiesling

Sponsored by:

Contact UsMedia KitPrivacy PolicyPress NewsJobs @ O'Reilly
Copyright © 2000-2006 O’Reilly Media, Inc. All Rights Reserved.
All trademarks and registered trademarks appearing on the O'Reilly Network are the property of their respective owners.
For problems or assistance with this site, email