[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: include dirs



jereme  <jereme@drjcomputing.com> writes:
j> I hope this question is directed to the correct group and not
j> too redundant.  I checked the list archives and the policy manual
j> before mailing this off.  What i would like is for someone to point me
j> towards a good source of information about what headers i need on my
j> system, where they should be, what should be in /usr/local/include,
j> how the kernel tree includes fit in the picture and anything else
j> related to the topic that i haven't asked, (because i don't know
j> enough to ask them yet:)  I have a rudminentary understand of
j> programming in C and the process of compilation and linking.  I
j> understand why i need headers, i am just not sure what my system
j> expects where.   I appreciate everyone time, thanks very much.

Under Debian, pretty much all of your header files are in
/usr/include, and they come from (foo)-dev packages.  So if you want
headers to compile with a particular library, you need to install the
relevant -dev package.  Stuff in /usr/local/include is only what
you've installed locally.  X header files are one big exception; those 
headers go in /usr/X11R6/include.

Kernel headers are...weird.  There's a /usr/include/linux directory,
but the header files there are the header files libc was built
against, not those for the current running kernel.  You need to
install kernel sources or header files explicitly, and manually pass
in a -I flag to wherever the kernel headers are installed.  You only
really need to do this for kernel modules, and The Debian Way (TM) to
do this is with make-kpkg from the kernel-package package.

HTH...

-- 
David Maze             dmaze@mit.edu          http://www.mit.edu/~dmaze/
"Theoretical politics is interesting.  Politicking should be illegal."
	-- Abra Mitchell



Reply to: