[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Rebuilding gcc cross environment failed
- Date: Tue, 08 Sep 1998 15:14:44 -0700
- From: erik.ivanenko at utoronto.ca (erik.ivanenko)
- Subject: Rebuilding gcc cross environment failed
I've tried the rebuild with all of the latest and greatest tools, and
using the Maketools provided by Eric Norum
egcs-1.1b w/ egcs-1.0.3-rtems-diff-19980527 ( the latest diff, but it
was not completely successful )
newlib-1.8.0 w/ newlib-1.8.0-rtems-diff-19980707 ( worked )
binutils-2.9.1 w/ binutils-2.9.1-rtems-diff-19980515 (worked )
The egcs patch failures produced the following .rej files:
gcc/ChangeLog.rej -- not important.
gcc/configure.rej
gcc/configure.lang.rej
gcc/configure.in.rej
The problem is NOT due to the failed changes. ( The rej files are
incluided at the end of this message. )
I barged on anyway, modifying the Maketools to reflect my environment:
GCC=egcs-1.1b
BINUTILS=binutils-2.9.1
NEWLIB=newlib-1.8.0
INSTALL_POINT=/usr/local/RTEMS/tools
and renamed Maketools to 'bit'.
I had the directory structure as suggested by the on-line documentation.
I ran: "bit i386" to create the i386 cross compiler toolset.
The failure occurred after an hour ( I only have a Pentium P-100
) during the construction of libc like this:
.....
rm -f lib.a
/home/cross-19980908/tools/build-i386-tools/binutils/ar rc lib.a bcmp.o
bcopy.o bzero.o index.o memchr.o memcmp.o memcpy.o memmove.o memset.o
rindex.o strcat.o strchr.o strcmp.o strcasecmp.o strcoll.o strcpy.o
strcspn.o strerror.o strlen.o strlwr.o strncat.o strncmp.o strncasecmp.o
strncpy.o strpbrk.o strrchr.o strspn.o strtok.o strtok_r.o strupr.o
strxfrm.o strstr.o u_strerr.o
gmake[4]: Leaving directory
`/home/cross-19980908/tools/build-i386-tools/i386-rtems/newlib/libc/string'
gmake[4]: Entering directory
`/home/cross-19980908/tools/build-i386-tools/i386-rtems/newlib/libc/signal'
/home/cross-19980908/tools/build-i386-tools/gcc/xgcc
-B/home/cross-19980908/tools/build-i386-tools/gcc/ -idirafter
/home/cross-19980908/tools/build-i386-tools/i386-rtems/newlib/targ-include
-idirafter /home/cross-19980908/tools/src/newlib/libc/include -nostdinc
-g -O2 -O2 -DHAVE_GETTIMEOFDAY -DMALLOC_PROVIDED -DEXIT_PROVIDED
-DMISSING_SYSCALL_NAMES -fno-builtin
-I/home/cross-19980908/tools/build-i386-tools/i386-rtems/newlib/./targ-include
-I/home/cross-19980908/tools/src/newlib/./libc/include -c
../../../../../src/newlib/libc/signal/raise.c
/home/cross-19980908/tools/build-i386-tools/gcc/xgcc
-B/home/cross-19980908/tools/build-i386-tools/gcc/ -idirafter
/home/cross-19980908/tools/build-i386-tools/i386-rtems/newlib/targ-include
-idirafter /home/cross-19980908/tools/src/newlib/libc/include -nostdinc
-g -O2 -O2 -DHAVE_GETTIMEOFDAY -DMALLOC_PROVIDED -DEXIT_PROVIDED
-DMISSING_SYSCALL_NAMES -fno-builtin
-I/home/cross-19980908/tools/build-i386-tools/i386-rtems/newlib/./targ-include
-I/home/cross-19980908/tools/src/newlib/./libc/include -c
../../../../../src/newlib/libc/signal/signal.c
../../../../../src/newlib/libc/signal/signal.c: In function
`_init_signal_r':
../../../../../src/newlib/libc/signal/signal.c:130: `NSIG' undeclared
(first use in this function)
../../../../../src/newlib/libc/signal/signal.c:130: (Each undeclared
identifier is reported only once
../../../../../src/newlib/libc/signal/signal.c:130: for each function it
appears in.)
../../../../../src/newlib/libc/signal/signal.c: In function `_signal_r':
../../../../../src/newlib/libc/signal/signal.c:149: `NSIG' undeclared
(first use in this function)
../../../../../src/newlib/libc/signal/signal.c: In function `_raise_r':
../../../../../src/newlib/libc/signal/signal.c:172: `NSIG' undeclared
(first use in this function)
gmake[4]: *** [signal.o] Error 1
gmake[4]: Leaving directory
`/home/cross-19980908/tools/build-i386-tools/i386-rtems/newlib/libc/signal'
gmake[3]: *** [signal/lib.a] Error 1
gmake[3]: Leaving directory
`/home/cross-19980908/tools/build-i386-tools/i386-rtems/newlib/libc'
gmake[2]: *** [libc/libc.a] Error 2
gmake[2]: Leaving directory
`/home/cross-19980908/tools/build-i386-tools/i386-rtems/newlib'
gmake[1]: *** [all-target-newlib] Error 2
gmake[1]: Leaving directory
`/home/cross-19980908/tools/build-i386-tools'
gmake: *** [cross] Error 2
ERROR: **** FAILED **** base build (step 1)
Started: Tue Sep 8 13:23:46 PDT 1998
Finished: Tue Sep 8 14:22:29 PDT 1998
#
The error I think is in signal.c and raise.c... they #include
<signal.h> , but they can only be reached by specifying <sys/signal.h>,
as they reside in
/home/cross-19980908/tools/src/newlib/./libc/include/sys, while the
include parameter for the compilation specifies only
-I/home/cross-19980908/tools/src/newlib/./libc/include. Either another
-I is added, or the #include is changed to <sys/signal.h>. Either will
work, but only one is standard.
FYI:
These were the reject files from trying to apply the egcs-1.0.3 patch to
egcs-1.1b:
gcc/configure.rej:
***************
*** 2895,2907 ****
tmake_file=i386/t-osf
extra_objs=halfpic.o
;;
! i[345]86-go32-rtems*)
cpu_type=i386
xm_file=i386/xm-go32.h
tm_file=i386/go32-rtems.h
tmake_file="i386/t-go32 t-rtems"
;;
! i[345]86-*-rtems*)
cpu_type=i386
tm_file=i386/rtems.h
tmake_file="i386/t-i386bare t-rtems"
--- 2895,2912 ----
tmake_file=i386/t-osf
extra_objs=halfpic.o
;;
! i[34567]86-go32-rtems*)
cpu_type=i386
xm_file=i386/xm-go32.h
tm_file=i386/go32-rtems.h
tmake_file="i386/t-go32 t-rtems"
;;
! i[34567]86-*-rtemself*)
! cpu_type=i386
! tm_file=i386/rtemself.h
! tmake_file="i386/t-i386bare t-rtems"
! ;;
! i[34567]86-*-rtems*)
cpu_type=i386
tm_file=i386/rtems.h
tmake_file="i386/t-i386bare t-rtems"
***************
*** 4281,4286 ****
;;
sh-*-elf*)
tm_file=sh/elf.h
float_format=sh
;;
sh-*-rtems*)
--- 4286,4296 ----
;;
sh-*-elf*)
tm_file=sh/elf.h
+ float_format=sh
+ ;;
+ sh-*-rtemself*)
+ tmake_file="sh/t-sh t-rtems"
+ tm_file=sh/rtemself.h
float_format=sh
;;
sh-*-rtems*)
gcc/configure.lang.rej
***************
*** 180,186 ****
rm Makefile.sed
echo 's| ||' > Makefile.sed
echo "s|^target=.*$|target=${target}|" >> Makefile.sed
! echo "s|^target_alias=.*$|target=${target_alias}|" >> Makefile.sed
echo "s|^xmake_file=.*$|xmake_file=${dep_host_xmake_file}|" >>
Makefile.sed
echo "s|^tmake_file=.*$|tmake_file=${dep_tmake_file}|" >>
Makefile.sed
echo "s|^version=.*$|version=${version}|" >> Makefile.sed
--- 180,186 ----
rm Makefile.sed
echo 's| ||' > Makefile.sed
echo "s|^target=.*$|target=${target}|" >> Makefile.sed
! echo "s|^target_alias=.*$|target_alias=${target_alias}|" >>
Makefile.sed
echo "s|^xmake_file=.*$|xmake_file=${dep_host_xmake_file}|" >>
Makefile.sed
echo "s|^tmake_file=.*$|tmake_file=${dep_tmake_file}|" >>
Makefile.sed
echo "s|^version=.*$|version=${version}|" >> Makefile.sed
gcc/configure.in.rej
***************
*** 993,1005 ****
tmake_file=i386/t-osf
extra_objs=halfpic.o
;;
! i[[345]]86-go32-rtems*)
cpu_type=i386
xm_file=i386/xm-go32.h
tm_file=i386/go32-rtems.h
tmake_file="i386/t-go32 t-rtems"
;;
! i[[345]]86-*-rtems*)
cpu_type=i386
tm_file=i386/rtems.h
tmake_file="i386/t-i386bare t-rtems"
--- 993,1010 ----
tmake_file=i386/t-osf
extra_objs=halfpic.o
;;
! i[[34567]]86-go32-rtems*)
cpu_type=i386
xm_file=i386/xm-go32.h
tm_file=i386/go32-rtems.h
tmake_file="i386/t-go32 t-rtems"
;;
! i[[34567]]86-*-rtemself*)
! cpu_type=i386
! tm_file=i386/rtemself.h
! tmake_file="i386/t-i386bare t-rtems"
! ;;
! i[[34567]]86-*-rtems*)
cpu_type=i386
tm_file=i386/rtems.h
tmake_file="i386/t-i386bare t-rtems"
***************
*** 2379,2384 ****
;;
sh-*-elf*)
tm_file=sh/elf.h
float_format=sh
;;
sh-*-rtems*)
--- 2384,2394 ----
;;
sh-*-elf*)
tm_file=sh/elf.h
+ float_format=sh
+ ;;
+ sh-*-rtemself*)
+ tmake_file="sh/t-sh t-rtems"
+ tm_file=sh/rtemself.h
float_format=sh
;;
sh-*-rtems*)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: vcard.vcf
Type: text/x-vcard
Size: 291 bytes
Desc: Card for Erik Ivanenko
Url : http://rtems.rtems.org/pipermail/rtems-users/attachments/19980908/26bb11ff/attachment.vcf