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 configure:29650: result: no configure:29654: checking linux/cdrom.h presence configure:29665: gcc -E -DQT_THREAD_SUPPORT -D_REENTRANT conftest.c configure:29671: $? = 0 configure:29690: result: yes configure:29710: WARNING: linux/cdrom.h: present but cannot be compiled configure:29712: WARNING: linux/cdrom.h: check for missing prerequisite headers? configure:29714: WARNING: linux/cdrom.h: proceeding with the preprocessor's result configure:29726: checking for linux/cdrom.h configure:29733: result: yes Hope this is helpful. I can send more information if it's needed. Richard Smith