From: Richard Smith
Subject: 'present but cannot be compiled' error for linux/cdrom.h To: address@hidden Date: Wed, 5 Nov 2003 00:02:36 +0000 X-Sent: 10 hours, 37 minutes, 45 seconds ago Hey. I get the following error quite a lot, for various linux headers: checking linux/cdrom.h usability... no checking linux/cdrom.h presence... yes configure: WARNING: linux/cdrom.h: present but cannot be compiled configure: WARNING: linux/cdrom.h: check for missing prerequisite headers? configure: WARNING: linux/cdrom.h: proceeding with the preprocessor's result configure: WARNING: ## ------------------------------------ ## configure: WARNING: ## Report this to address@hidden ## configure: WARNING: ## ------------------------------------ ## checking for linux/cdrom.h... yes The error arises when ./configure'ing various KDE packages (the above is from the kdemultimedia package). As far as I can see, the cause of the error is the presence of the -ansi flag on the gcc command line. The configure.in.in line for the check is: AC_CHECK_HEADERS(linux/cdrom.h) Relevant extract of config.log: (can send complete log if this is not enough) configure:29618: checking linux/cdrom.h usability configure:29631: gcc -c -ansi -W -Wall -Wchar-subscripts -Wshadow -Wpointer-arith -Wmissing-prototypes -Wwrite-strings -D_XOPEN_SOURCE=500 In file included from /usr/include/linux/cdrom.h:14, from conftest.c:88: /usr/include/asm/byteorder.h:38: syntax error before "__u64" [...] configure:29634: $? = 1 configure: failed program was: [...] | #include