GCC 3.2 compilation trouble on Ultrasparc1E ALFS
ianmckee at sbcglobal.net
Sun Mar 30 13:51:10 PST 2003
I performed a manual LFS installation on a pentium-266 which went very
smoothly, and my next project is an ALFS install on a Sun Ultrasparc 1E
(167MHz proc, 128MB ram) using nALFS and the LFS-4.0 profile which comes in
I am using a Debian Linux distro, kernel 2.4.18 on the Ultrasparc with
GCC-3.0.4 to build ALFS.
During the chapter 5 compilation of the static binaries, everything goes
smoothly until GCC 3.2, where the following error occurs; here's the nALFS
output (line numbers added in attempt at clarity):
9 x-: make: Entering directory `/mnt/lfs/static/usr/src/gcc-build/gcc'
stage1/xgcc -Bstage1/ -B/static/sparc64-unknown-linux-gnu/bin/ -c -DIN_GCC
xWall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wtraditional
xong-long -DHAVE_CONFIG_H -DGENERATOR_FILE -I. -I. -I../../gcc-3.2/gcc -
13 xc/. -I../../gcc-3.2/gcc/config -I../../gcc-3.2/gcc/../include
14 x-o gengenrtl.o
stage1/xgcc -Bstage1/ -B/static/sparc64-unknown-linux-gnu/bin/ -DIN_GCC -
xl -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wtraditional -p
17 x-long -DHAVE_CONFIG_H -DGENERATOR_FILE -static -o gengenrtl \
18 x-: gengenrtl.o ../libiberty/libiberty.a
19 x-: ./gengenrtl -h > tmp-genrtl.h
20 x-: /bin/sh: ./gengenrtl: cannot execute binary file
21 x-: make: *** [s-genrtl] Error 126
22 x-: make: Leaving directory `/mnt/lfs/static/usr/src/gcc-build/gcc'
23 x-: make: *** [stage2_build] Error 2
24 x-: make: Leaving directory `/mnt/lfs/static/usr/src/gcc-build/gcc'
25 x-: make: *** [bootstrap] Error 2
26 xI: Sending the package log to the frontend...
27 xI: Log file stored in "/root/.nALFS/packages/gcc-3.2.log".
28 xE: Execution failed (2).
On line 19, "make" attempts to execute the binary gengenrtl, and on line 20
we see that this fails. Here is the output of "file gengenrtl:"
gengenrtl: ELF 64-bit MSB executable, SPARC V9, version 1 (SYSV), statically
linked, not stripped
To the best of my knowledge, the problem here is that the early stages of
GCC-3.2 compilation produce a 64-bit binary gengenrtl, while 64-bit linux
for ultrasparc only supports a 32-bit userland. Thus a 64-bit binary will
Can anybody tell me how to force the compilation of gcc to produce only
32-bit intermediate and final binaries? I think that will solve my problem.
Also, if another solution is correct, or if I should ask another LFS list,
please point me in that direction.
Unsubscribe: send email to listar at linuxfromscratch.org
and put 'unsubscribe alfs-discuss' in the subject header of the message
More information about the alfs-discuss