LINUX.ORG.RU

Кросскомпиляция gcc x86/sparc


0

2

По мотивам Установка Solaris 10 qemu / кросс-компиляция

Собираю по этой инструкции http://www.cis.upenn.edu/~milom/cross-compile.html , затыкается на

rm gcc.pod
make[3]: Leaving directory `/home/xtra/bred/scratch/users/build/build-gcc/gcc'
mkdir -p -- i686-pc-linux-gnu/libgcc
Checking multilib configuration for libgcc...
Configuring stage 1 in i686-pc-linux-gnu/libgcc
configure: creating cache ./config.cache
checking for --enable-version-specific-runtime-libs... no
checking for a BSD-compatible install... /usr/bin/install -c
checking for gawk... gawk
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking for i686-pc-linux-gnu-ar... ar
checking for i686-pc-linux-gnu-lipo... lipo
checking for i686-pc-linux-gnu-nm... /home/xtra/bred/scratch/users/build/build-gcc/./gcc/nm
checking for i686-pc-linux-gnu-ranlib... ranlib
checking for i686-pc-linux-gnu-strip... strip
checking whether ln -s works... yes
checking for i686-pc-linux-gnu-gcc... /home/xtra/bred/scratch/users/build/build-gcc/./gcc/xgcc -B/home/xtra/bred/scratch/users/build/build-gcc/./gcc/ -B/i686-pc-linux-gnu/bin/ -B/i686-pc-linux-gnu/lib/ -isystem /i686-pc-linux-gnu/include -isystem /i686-pc-linux-gnu/sys-include
checking for suffix of object files... configure: error: in `/home/xtra/bred/scratch/users/build/build-gcc/i686-pc-linux-gnu/libgcc':
configure: error: cannot compute suffix of object files: cannot compile
See `config.log' for more details.
make[2]: *** [configure-stage1-target-libgcc] Error 1
make[2]: Leaving directory `/home/xtra/bred/scratch/users/build/build-gcc'
make[1]: *** [stage1-bubble] Error 2
make[1]: Leaving directory `/home/xtra/bred/scratch/users/build/build-gcc'
make: *** [all] Error 2

куда копать? пробовал gcc 4.7.1 и 4.4.2

★★☆☆

Последнее исправление: xtraeft (всего исправлений: 1)

теперь сыпется тут:

In file included from ../../../gcc-4.4.2/libgcc/../gcc/libgcc2.c:61:
../../../gcc-4.4.2/libgcc/../gcc/libgcc2.h:444: error: storage class specified for parameter ‘__clzdi2’
../../../gcc-4.4.2/libgcc/../gcc/libgcc2.h:444: warning: parameter names (without types) in function declaration
../../../gcc-4.4.2/libgcc/../gcc/libgcc2.h:445: error: storage class specified for parameter ‘__clzsi2’
../../../gcc-4.4.2/libgcc/../gcc/libgcc2.h:445: warning: parameter names (without types) in function declaration
../../../gcc-4.4.2/libgcc/../gcc/libgcc2.h:446: error: storage class specified for parameter ‘__ctzsi2’
../../../gcc-4.4.2/libgcc/../gcc/libgcc2.h:446: warning: parameter names (without types) in function declaration
../../../gcc-4.4.2/libgcc/../gcc/libgcc2.h:447: error: storage class specified for parameter ‘__ffssi2’
../../../gcc-4.4.2/libgcc/../gcc/libgcc2.h:447: warning: parameter names (without types) in function declaration
../../../gcc-4.4.2/libgcc/../gcc/libgcc2.h:448: error: storage class specified for parameter ‘__ffsdi2’
../../../gcc-4.4.2/libgcc/../gcc/libgcc2.h:448: warning: parameter names (without types) in function declaration
../../../gcc-4.4.2/libgcc/../gcc/libgcc2.h:449: error: storage class specified for parameter ‘__ctzdi2’
../../../gcc-4.4.2/libgcc/../gcc/libgcc2.h:449: warning: parameter names (without types) in function declaration
../../../gcc-4.4.2/libgcc/../gcc/libgcc2.h:450: error: storage class specified for parameter ‘__popcountsi2’
../../../gcc-4.4.2/libgcc/../gcc/libgcc2.h:450: warning: parameter names (without types) in function declaration
../../../gcc-4.4.2/libgcc/../gcc/libgcc2.h:451: error: storage class specified for parameter ‘__popcountdi2’
../../../gcc-4.4.2/libgcc/../gcc/libgcc2.h:451: warning: parameter names (without types) in function declaration
../../../gcc-4.4.2/libgcc/../gcc/libgcc2.h:452: error: storage class specified for parameter ‘__paritysi2’
../../../gcc-4.4.2/libgcc/../gcc/libgcc2.h:452: warning: parameter names (without types) in function declaration
../../../gcc-4.4.2/libgcc/../gcc/libgcc2.h:453: error: storage class specified for parameter ‘__paritydi2’
../../../gcc-4.4.2/libgcc/../gcc/libgcc2.h:453: warning: parameter names (without types) in function declaration
../../../gcc-4.4.2/libgcc/../gcc/libgcc2.h:456: error: storage class specified for parameter ‘__enable_execute_stack’
../../../gcc-4.4.2/libgcc/../gcc/libgcc2.c:551: error: expected declaration specifiers before ‘DItype’
/usr/include/libio.h:464: error: old-style parameter declarations in prototyped function definition
../../../gcc-4.4.2/libgcc/../gcc/libgcc2.c:562: error: expected ‘{’ at end of input
/usr/include/libio.h:464: warning: unused parameter ‘__fp’
make[3]: *** [_muldi3.o] Error 1
make[3]: Leaving directory `/home/xtra/bred/scratch/users/build/build-gcc/i686-pc-linux-gnu/libgcc'
make[2]: *** [all-stage1-target-libgcc] Error 2
make[2]: Leaving directory `/home/xtra/bred/scratch/users/build/build-gcc'
make[1]: *** [stage1-bubble] Error 2
make[1]: Leaving directory `/home/xtra/bred/scratch/users/build/build-gcc'
make: *** [all] Error 2
xtraeft ★★☆☆
() автор топика
make[4]: Leaving directory `/home/xtra/bred/scratch/users/build/build-gcc/i686-pc-linux-gnu/libgcc'
DEFINES='' HEADERS='../../../gcc-4.7.1/libgcc/config/i386/value-unwind.h' \
		../../../gcc-4.7.1/libgcc/mkheader.sh > tmp-libgcc_tm.h
/bin/bash ../../../gcc-4.7.1/libgcc/../move-if-change tmp-libgcc_tm.h libgcc_tm.h
echo timestamp > libgcc_tm.stamp
/home/xtra/bred/scratch/users/build/build-gcc/./gcc/xgcc -B/home/xtra/bred/scratch/users/build/build-gcc/./gcc/ -B/i686-pc-linux-gnu/bin/ -B/i686-pc-linux-gnu/lib/ -isystem /i686-pc-linux-gnu/include -isystem /i686-pc-linux-gnu/sys-include    -g -O2 -O2  -g -O2 -DIN_GCC   -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition  -isystem ./include   -fpic -g -DIN_LIBGCC2 -fbuilding-libgcc -fno-stack-protector   -fpic -I. -I. -I../.././gcc -I../../../gcc-4.7.1/libgcc -I../../../gcc-4.7.1/libgcc/. -I../../../gcc-4.7.1/libgcc/../gcc -I../../../gcc-4.7.1/libgcc/../include -I../../../gcc-4.7.1/libgcc/config/libbid -DENABLE_DECIMAL_BID_FORMAT -DHAVE_CC_TLS  -DUSE_TLS -o _muldi3.o -MT _muldi3.o -MD -MP -MF _muldi3.dep -DL_muldi3 -c ../../../gcc-4.7.1/libgcc/libgcc2.c -fvisibility=hidden -DHIDE_EXPORTS
In file included from /usr/include/stdio.h:28:0,
                 from ../../../gcc-4.7.1/libgcc/../gcc/tsystem.h:88,
                 from ../../../gcc-4.7.1/libgcc/libgcc2.c:29:
/usr/include/features.h:324:26: fatal error: bits/predefs.h: No such file or directory
compilation terminated.
make[3]: *** [_muldi3.o] Error 1
make[3]: Leaving directory `/home/xtra/bred/scratch/users/build/build-gcc/i686-pc-linux-gnu/libgcc'
make[2]: *** [all-stage1-target-libgcc] Error 2
make[2]: Leaving directory `/home/xtra/bred/scratch/users/build/build-gcc'
make[1]: *** [stage1-bubble] Error 2
make[1]: Leaving directory `/home/xtra/bred/scratch/users/build/build-gcc'
make: *** [all] Error 2

уже руки опускаются

xtraeft ★★☆☆
() автор топика

можно нескромный вопрос — а нафига кросс-компилятор самому собирать? Возьмите, например, с gaisler.com (можно — бинарник, можно — исходники) и пользуйтесь.

demidrol ★★★★★
()
Ответ на: комментарий от xtraeft

короче, у них (у gaisler) есть патчи для gcc и newlib и Makefiles для сборки всего этого дела. Если что — у меня в свое время (где-то полгода назад) получилось собрать кросс-компилятор из x86_64 в sparc v8

demidrol ★★★★★
()
Ответ на: комментарий от demidrol

у меня в свое время (где-то полгода назад) получилось собрать кросс-компилятор из x86_64 в sparc v8

И он собирал приложения, которые работали на SPARC Solaris?

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

эээ, а про солярис что-то сказано?

Вообще-то он собирал приложения, которые гонялись на голом железе.

demidrol ★★★★★
()
Ответ на: комментарий от tailgunner

и да, я так понимаю, что у ТС проблема уже со сборкой компилятора. Мозготр..х с libc будет позже.

demidrol ★★★★★
()
Ответ на: комментарий от demidrol

эээ, а про солярис что-то сказано?

Да. Нужен кросс-компилятор именно для Соляриса.

на голом железе.

Я вот тоже так подумал.

tailgunner ★★★★★
()
Ответ на: комментарий от xtraeft
make[4]: Leaving directory `/home/xtra/bred/scratch/users/build/build-gcc/i686-pc-linux-gnu/libgcc'
/home/xtra/bred/scratch/users/build/build-gcc/./gcc/xgcc -B/home/xtra/bred/scratch/users/build/build-gcc/./gcc/ -B/i686-pc-linux-gnu/bin/ -B/i686-pc-linux-gnu/lib/ -isystem /i686-pc-linux-gnu/include -isystem /i686-pc-linux-gnu/sys-include    -g -O2 -O2  -g -O2 -DIN_GCC   -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition  -isystem ./include  -fPIC -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -fno-stack-protector   -I. -I. -I../.././gcc -I../../../gcc-4.6.3/libgcc -I../../../gcc-4.6.3/libgcc/. -I../../../gcc-4.6.3/libgcc/../gcc -I../../../gcc-4.6.3/libgcc/../include -I../../../gcc-4.6.3/libgcc/config/libbid -DENABLE_DECIMAL_BID_FORMAT -DHAVE_CC_TLS  -DUSE_TLS -o _muldi3.o -MT _muldi3.o -MD -MP -MF _muldi3.dep -DL_muldi3 -c ../../../gcc-4.6.3/libgcc/../gcc/libgcc2.c \
	  -fvisibility=hidden -DHIDE_EXPORTS
In file included from /usr/include/features.h:389:0,
                 from /usr/include/stdio.h:28,
                 from ../../../gcc-4.6.3/libgcc/../gcc/tsystem.h:87,
                 from ../../../gcc-4.6.3/libgcc/../gcc/libgcc2.c:29:
/usr/include/gnu/stubs.h:7:27: fatal error: gnu/stubs-32.h: No such file or directory
compilation terminated.
make[3]: *** [_muldi3.o] Error 1
make[3]: Leaving directory `/home/xtra/bred/scratch/users/build/build-gcc/i686-pc-linux-gnu/libgcc'
make[2]: *** [all-stage1-target-libgcc] Error 2
make[2]: Leaving directory `/home/xtra/bred/scratch/users/build/build-gcc'
make[1]: *** [stage1-bubble] Error 2
make[1]: Leaving directory `/home/xtra/bred/scratch/users/build/build-gcc'
make: *** [all] Error 2
xtraeft ★★☆☆
() автор топика
~ # cat /etc/apt/sources.list | grep emdebian
deb http://www.emdebian.org/debian/ squeeze main
ttnl ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.