[Patch] crosstool w/ glibc-2.3.3 on Mac OS X

Dan Kegel dank@kegel.com
Wed Mar 9 07:21:00 GMT 2005


Martin Schaffner wrote:
>> Could you perhaps disable the check more carefully, e.g. wrap it in
>>   if test x$enable_sanity=xyes; then
>>      ...
>>   fi
>> Since crosstool uses --disable-sanity-checks when installing glibc
>> headers, that should do the trick.
> 
> Unfortunately, --disable-sanity-checks is not used everywhere: ...

Needs a little debugging, then.  A little set -x and a few echos
will probably show what the problem is.  Also, maybe we
should disable just the setting of critic_missing, or
clear it afterwards, rather than trying to disable the whole
version check....

>> http://fink.sourceforge.net/faq/comp-general.php?#basic-headers
>> says that there is, too, a stddef.h if you have the right packages
>> installed.  Maybe we should update our installation instructions  
>> instead?
> 
> 
> True, there is such a file on my system:
> martin$ head /usr/include/stddef.h ...
> but unfortunately, its include path is not found by gcc when processing  
> bits/stdio_lim.st:

Right, nevermind, I was wrong to suggest using the system's copy.

> ... 
> { echo '#include "posix/bits/posix1_lim.h"';            \
>   echo '#define _LIBC 1';                                       \
>   echo '#include "misc/sys/uio.h"'; } |                 \
> gcc ...-Isysdeps/generic/elf -Isysdeps/generic -nostdinc -isystem include  
> -isystem  
> /opt/crosstool/powerpc-unknown-linux-gnu/gcc-3.4.1-glibc-2.3.3/powerpc- 
> unknown-linux-gnu/include -xc - -o  
> /build/crosstool-0.28-rc37/build/powerpc-unknown-linux-gnu/gcc-3.4.1- 
> glibc-2.3.3/build-glibc-headers/bits/stdio_lim.hT
> In file included from posix/sys/types.h:31,
>                  from include/sys/types.h:1,
>                  from misc/sys/uio.h:24,
>                  from <stdin>:3:
> sysdeps/generic/bits/types.h:31:20: No include path in which to find stddef.h

Oh. I guess stddef.h is created when gcc is installed,
but gcc isn't installed yet at that point.  Great,
one more circular dependency.  Thanks, Ulrich!

Your fix was probably too rough; I suspect we only want to
mess with the initial header install.  (I jumped through
a few hoops already here with gcc-2.3.2, see the comments in crosstool.sh.)
Maybe simply touching stddef.h somewhere would do it,
or maybe stddef.h actually has to have something in it then,
I don't know.   I'm too tired to look at it to see if your
fix actually does any harm at the moment...

- Dan

-- 
Trying to get a job as a c++ developer?  See http://kegel.com/academy/getting-hired.html

------
Want more information?  See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/
Want to unsubscribe? Send a note to crossgcc-unsubscribe@sources.redhat.com



More information about the crossgcc mailing list