gcc 4.1.2 failed to compile 2.4.32 kernel: unrecognized command line options
I have tried to compile the 2.4.32 kernel for the ARM922T CPU (CENTAUR
KS8695P Integrated Multi-Port PCI Gateway Solution). I had no problems
with my old toolchain for uClibc:
Reading specs from
/usr/local/src/toolchain_uClibc/gcc-3.3.x/toolchain_arm/usr/bin/../lib/gcc-lib/arm-linux-uclibc/3.3.4/specs
Configured with:
/usr/local/src/toolchain_uClibc/gcc-3.3.x/toolchain_build_arm/gcc-3.3.4/configure
--prefix=/usr/local/src/toolchain_uClibc/gcc-3.3.x/toolchain_arm
--build=i386-pc-linux-gnu --host=i386-pc-linux-gnu
--target=arm-linux-uclibc --enable-languages=c,c++ --enable-shared
--with-gxx-include-dir=/usr/local/src/toolchain_uClibc/gcc-3.3.x/toolchain_arm/arm-linux-uclibc/include/c++
--disable-__cxa_atexit --enable-target-optspace --with-gnu-ld
--disable-nls --enable-multilib --enable-sjlj-exceptions
Thread model: posix
gcc version 3.3.4
Now I need the toolchain for the glibc. I've installed
gcc-4.1-arm-linux-gnu from emdebian repository (gcc version 4.1.2 20061115).
I can compile my projects without any problem, but when I try to compile
the kernel I get the fallowing error messages:
make dep
rm -f include/asm
( cd include ; ln -sf asm-arm asm)
make[1]: Entering directory `/home/user/projects/Kernel/arch/arm/tools'
/home/user/projects/Kernel/scripts/mkdep -D__KERNEL__
-I/home/user/projects/Kernel/include -Wall -Wstrict-prototypes
-Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -Uarm -fno-common
-pipe -g3 -mapcs-32 -D__LINUX_ARM_ARCH__=4 -march=armv4 -mtune=arm9tdmi
-mshort-load-bytes -msoft-float -Uarm -- getconstants.c |\
sed s,getconstants.o,constants.h, > .depend
make all
make[2]: Entering directory `/home/user/projects/Kernel/arch/arm/tools'
arm-linux-gnu-gcc -D__KERNEL__ -I/home/user/projects/Kernel/include
-Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing
-fno-common -Uarm -fno-common -pipe -g3 -mapcs-32 -D__LINUX_ARM_ARCH__=4
-march=armv4 -mtune=arm9tdmi -mshort-load-bytes -msoft-float -Uarm -S -o
constants.h.tmp.1 getconstants.c
cc1: error: unrecognized command line option "-mapcs-32"
cc1: error: unrecognized command line option "-mshort-load-bytes"
make[2]: *** [constants.h] Error 1
make[2]: Leaving directory `/home/user/projects/Kernel/arch/arm/tools'
make[1]: *** [dep] Error 2
make[1]: Leaving directory `/home/user/projects/Kernel/arch/arm/tools'
make: *** [archdep] Error 2
Is it a feature of the 4.1 branch not to support -mapcs-32 and
-mshort-load-bytes? I haven't find anything solving this problem.
Best regards,
Yegor Yefremov
Reply to: