I'm trying to build a Linux/Intel compiler to generate PowerPC/AIX binaries (as part of my ongoing quest not to use the Codewarrior pascal compiler). I've been following the instructs in http://www.objsw.com/CrossGCC. These instructions work fine when building a non-gpc-patched version of egcs 1.1.1, but the gpc-patched version goes into some sort of recursive make - it spews out the following over and over again, making a new make each time, until it hits about 200 make processes, whereupon they all exit and the process aborts with an error. The circular dependency thing looks interesting...any ideas?
make[1]: Entering directory `/home/root/cross/build-gcc/gcc' if [ -f libgcc2.ready ] ; then \ true; \ else \ touch libgcc2.ready; \ fi make[1]: Circular cplib2.ready <- pascal dependency dropped. for i in `/home/root/cross/build-gcc/gcc/xgcc -B/home/root/cross/build-gcc/gcc/ --print-multi-lib`; do \ dir=`echo $i | sed -e 's/;.*$//'`; \ flags=`echo $i | sed -e 's/^[^;]*;//' -e 's/@/ -/g'`; \ make GCC_FOR_TARGET="/home/root/cross/build-gcc/gcc/xgcc -B/home/root/cross/build-gcc/gcc/" \ AR="powerpc-ibm-aix4.2-ar" AR_FLAGS="rc" CC="gcc" CFLAGS="-g -O2" \ RANLIB="powerpc-ibm-aix4.2-ranlib" RANLIB_TEST="[ -f powerpc-ibm-aix4.2-ranlib ] || ( [ "i586-pc-linux-gnu" = "powerpc-ibm-aix4.2" ] && [ -f /usr/bin/ranlib -o -f /bin/ranlib ] )" \ LANGUAGES="c proto gcov c++ f77 pascal" \ HOST_PREFIX="" HOST_PREFIX_1="loser-" \ LIBGCC2_CFLAGS="-O2 -I/usr/include -DCROSS_COMPILE -DIN_GCC -g -O2 -I./include -g1 -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED ${flags}" \ MULTILIB_CFLAGS="${flags}" \ LIBGCC1="" LIBGCC2="libgcc2.a" \ dir="${dir}" stmp-multilib-sub; \ if [ $? -eq 0 ] ; then true; else exit 1; fi; \ done make[2]: Entering directory `/home/root/cross/build-gcc/gcc' rm -f libgcc2.a if [ -d . ]; then \ cd .; \ rm -f libgcc.a ; \ else true; \ fi make GCC_FOR_TARGET="/home/root/cross/build-gcc/gcc/xgcc -B/home/root/cross/build-gcc/gcc/" \ AR="powerpc-ibm-aix4.2-ar" AR_FLAGS="rc" CC="gcc" CFLAGS="-g -O2" \ HOST_PREFIX="" HOST_PREFIX_1="loser-" \ LANGUAGES="c proto gcov c++ f77 pascal" \ LIBGCC2_CFLAGS="-O2 -I/usr/include -DCROSS_COMPILE -DIN_GCC -g -O2 -I./include -g1 -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED " libgcc2.a
Jo Dillon wrote:
I'm trying to build a Linux/Intel compiler to generate PowerPC/AIX binaries (as part of my ongoing quest not to use the Codewarrior pascal compiler). I've been following the instructs in http://www.objsw.com/CrossGCC. These instructions work fine when building a non-gpc-patched version of egcs 1.1.1, but the gpc-patched version goes into some sort of recursive make - it spews out the following over and over again, making a new make each time, until it hits about 200 make processes, whereupon they all exit and the process aborts with an error. The circular dependency thing looks interesting...any ideas?
In `Make-lang.in', search for "bad news". Please retry and remove the dependency of "$(GCC_PARTS)" in the rule below that comment.
This circular dependency compiler <-- runtime library <-- compiler is an unsolved problem in GPC's `Make-lang.in'. Help from Makefile experts (or others who have an idea:-) is most welcome.
Peter