Makefile error involving header files.

Kevin M. Bealer (kmb203@psu.edu)
Mon, 03 Mar 1997 04:23:42 -0500


I have been reading a lot of messages very quickly, so I may have
missed the answer to this. While compiling the 2.1.27 kernel, I
ran into the following message:

make[4]: Leaving directory `/usr/src/linux/drivers/block'
make[4]: Entering directory `/usr/src/linux/drivers/char'
gcc -o conmakehash conmakehash.c
In file included from conmakehash.c:21:
/usr/include/ctype.h:1: No include path in which to find ctype.h
make[4]: *** [conmakehash] Error 1
...

Now the file /usr/include/ctype.h exists, and it has the following
in it:

----
#include_next <ctype.h>

#undef isalnum
#define isalnum(c) (isalpha(c) || isdigit(c))
----

I don't understand the #include_next directive, why this file
appears to include itself, or what went wrong.

In case it is relevant, I am on a Debian system and the directories
/usr/include/{linux,asm} are a real directory and a symlink to a
real directory /usr/include/asm-i386.

Is this a known problem? Is this likely to be a non-kernel problem,
(since it appears it was compiling a helper app not actual kernel
code when it happened)?

--kmb203@psu.edu----------------Debian/GNU--1.2---Linux--2.1.25---
<kmb203@psu.edu> <bealer@cse.psu.edu> <kmb203@kmb203.rh.psu.edu>
------------------------------------------------------------------
A computer lets you make more mistakes faster than any other
invention, with the possible exceptions of handguns and Tequilla.
-- Mitch Ratcliffe