autoconf
[Top][All Lists]
Advanced

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

Re: No, I *don't* HAVE_IO_H!


From: David Andrew Michael Noelle
Subject: Re: No, I *don't* HAVE_IO_H!
Date: Sun, 29 Oct 2000 21:00:32 -0500 (EST)

> Sender: address@hidden
> Cc: address@hidden
> From: Alexandre Oliva <address@hidden>
> Date: 24 Oct 2000 01:28:58 -0200
> 
> On Oct 23, 2000, David Andrew Michael Noelle <address@hidden> wrote:
> 
> > Can anyone tell me what might cause this?
> 
> A config.cache or config.site that incorrectly sets cache variables.

No, I don't think that's it.  First of all, I'm talking about dozens of
different tarball packages, none of which came with any config.cache
that might have had bad settings.  Deleting config.cache and config.log
and running configure again has no effect on the problem.

And I have no "config.site" files anywhere on my system, or in the
tarballs I've been having this problem with.  Should I have such a
file?  How do I find out what exactly to put in that file?  I don't see
how a _missing_ site defaults file could cause configure to find files
that don't exist.


It seems that somehow, some of the "g++ -E conftest.C" tests are
succeeding even if the header file they're looking for doesn't exist.
For example, I'm currently having a lot of trouble trying to compile the
new kdelibs-2.0.  Invoking ./configure from a fresh tarball produces a
config.h file that contains, among a great deal else, the following
lines:

/* Define if you have <vfork.h>.  */
#define HAVE_VFORK_H 1

/* Define if you have the <libutil.h> header file.  */
#define HAVE_LIBUTIL_H 1

/* Define if you have the <sys/mnttab.h> header file.  */
#define HAVE_SYS_MNTTAB_H 1

/* Define if you have the <util.h> header file.  */
#define HAVE_UTIL_H 1


None of those four headers exist on my system, so as soon as make
encountered the files containing the #includes associated with these
definitions, it failed.  I commented out those #defines and the
compilation proceeded normally.  Without a config.cache or config.site
file, how did configure come to the conclusion that those headers do
exist?  I looked for them in config.log and found the following:

configure:8476: checking for vfork.h
configure:8486: gcc -E  conftest.c >/dev/null 2>conftest.out
configure:8511: checking for working vfork
configure:8662: gcc -o conftest -O2   conftest.c  1>&5
configure:8576: vfork.h: No such file or directory
configure: failed program was:
[...]
configure:4570: checking for sys/mnttab.h
configure:4580: gcc -E  conftest.c >/dev/null 2>conftest.out
[...]
configure:10077: checking for libutil.h
configure:10087: g++ -E  conftest.C >/dev/null 2>conftest.out
configure:10077: checking for util.h
configure:10087: g++ -E  conftest.C >/dev/null 2>conftest.out


I find it highly interesting to note that that the first test for the
<vfork.h> header succeeded, but the very next test configure performed,
to determine whether vfork() actually works, failed because <vfork.h>
could not be found.

-- 
            -Dave Noelle,                 address@hidden
            -the Villa Straylight,  http://www.straylight.org



reply via email to

[Prev in Thread] Current Thread [Next in Thread]