gcc-3.0 compiling problem on linux with older libc

schaecsn schaecsn@gmx.de
Tue Jun 19 23:53:00 GMT 2001


Hi gcc-folks,

I try to compile gcc 3.0 on my box. So far I had never problems compling
gcc. In the last years I compiled all versions with success.

I have an intel linux box with kernel 2.4.5 and libc-5.4.46.

I guess the old libc is the problem:

when I do bootstrap gcc-3.0 I get after some time a

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -
./xgcc -B./ -B/usr/local/gcc//i586-pc-linux-gnulibc1/bin/ -isystem
/usr/local/gc
c//i586-pc-linux-gnulibc1/include -O2   -DIN_GCC   -DUSE_GNULIBC_1 -W
-Wall -Wwr
ite-strings -Wstrict-prototypes -Wmissing-prototypes -isystem ./include 
-fPIC -
g1  -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED  -I. -I. -I../../gcc-3.0/gcc
-I../../g
cc-3.0/gcc/. -I../../gcc-3.0/gcc/config -I../../gcc-3.0/gcc/../include 
-DL_muld
i3 -c ../../gcc-3.0/gcc/libgcc2.c -o libgcc/./_muldi3.o
In file included from tm.h:7,
                 from ../../gcc-3.0/gcc/config/i386/xm-i386.h:39,
                 from tconfig.h:3,
                 from ../../gcc-3.0/gcc/libgcc2.c:36:
../../gcc-3.0/gcc/config/i386/linux.h:237:26: sys/ucontext.h: No such
file or di
rectory
make[3]: *** [libgcc/./_muldi3.o] Error 1
make[3]: Leaving directory `/mnt/compile/gcc-3.0-temp/gcc'
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -

O.k., I am missing /usr/include/sys/ucontext.h. I guess this should come
with the C library.

I found a ucontext.h in /usr/include/asm alias /usr/linux/include/asm
but this one doesn't work (changing  #include <sys/ucontext.h> ->
#include <asm/ucontext.h> in gcc-3.0/gcc/config/i386/linux.h:237)
results after some compiling in
 
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -
./xgcc -B./ -B/usr/local/gcc//i586-pc-linux-gnulibc1/bin/ -isystem
/usr/local/gcc//i586-pc-linux-gnulibc1/include -O2   -DIN_GCC  
-DUSE_GNULIBC_1 -W -Wall -Wwrite-strings -Wstrict-prototypes
-Wmissing-prototypes -isystem ./include  -fPIC -g1  -DIN_LIBGCC2
-D__GCC_FLOAT_NOT_NEEDED  -I. -I. -I../../gcc-3.0/gcc
-I../../gcc-3.0/gcc/. -I../../gcc-3.0/gcc/config
-I../../gcc-3.0/gcc/../include  -DL_muldi3 -c
../../gcc-3.0/gcc/libgcc2.c -o libgcc/./_muldi3.o
In file included from ../../gcc-3.0/gcc/config/i386/linux.h:237,
                 from tm.h:7,
                 from ../../gcc-3.0/gcc/config/i386/xm-i386.h:39,
                 from tconfig.h:3,
                 from ../../gcc-3.0/gcc/libgcc2.c:36:
/usr/include/asm/ucontext.h:8: field `uc_mcontext' has incomplete type
/usr/include/asm/ucontext.h:10: confused by earlier errors, bailing out
make[3]: *** [libgcc/./_muldi3.o] Error 1

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -

ucontext.h from /usr/src/linux/include/asm is btw that guy:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -
#ifndef _ASMi386_UCONTEXT_H
#define _ASMi386_UCONTEXT_H

struct ucontext {
        unsigned long     uc_flags;
        struct ucontext  *uc_link;
        stack_t           uc_stack;
        struct sigcontext uc_mcontext;
        sigset_t          uc_sigmask;   /* mask last for extensibility
*/
};

#endif /* !_ASMi386_UCONTEXT_H */
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -


whatever an incomplete type is, I give up ...


Is there an easy solution to fix it by myself? I can hope that
gcc-3.01/gcc-3.1 fixes my problem?

Thanks in advance

- Stefan
-- 
   ___  ___       __         |   Name: Stefan Schäckeler
  /  / /  /____  (__)__  ___ | E-mail: schaecsn@gmx.de
 /  /_/  /  _  \/  /\  \/  / |    day: Solaris 2.5.1, HP-UX 10.20
 \___,__/__//__/__/ /__/\__\ |  night: slackware 3.0, netbsd-alpha 1.5



More information about the Gcc-help mailing list