/cygdrive/c/Projects/toolchains/gnuarm/gcc-build/./gcc/xgcc -B/cygdrive/c/Projects/toolchains/gnuarm/gcc-build/./gcc/ -B/usr/local/toolchains/arm-elf/bin/ -B/usr/local/toolchains/arm-elf/lib/ -isystem /usr/local/toolchains/arm-elf/include -isystem /usr/local/toolchains/arm-elf/sys-include -O2 -O2 -g -O2 -DIN_GCC -DCROSS_COMPILE -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -isystem ./include -Dinhibit_libc -fno-inline -g -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -I. -I. -I../../gcc-4.2.0/gcc -I../../gcc-4.2.0/gcc/. -I../../gcc-4.2.0/gcc/../include -I../../gcc-4.2.0/gcc/../libcpp/include -I../../gcc-4.2.0/gcc/../libdecnumber -I../libdecnumber -fleading-underscore -DL_udivsi3 -xassembler-with-cpp -c ../../gcc-4.2.0/gcc/config/arm/lib1funcs.asm -o libgcc/under/_udivsi3.o ../../gcc-4.2.0/gcc/config/arm/lib1funcs.asm: Assembler messages: ../../gcc-4.2.0/gcc/config/arm/lib1funcs.asm:754: Error: undefined symbol `__udivsi3' in operation ../../gcc-4.2.0/gcc/config/arm/lib1funcs.asm:754: Error: can't resolve `.text' {.text section} - `__udivsi3' {*UND* section} make[2]: *** [libgcc/under/_udivsi3.o] Error 1 make[2]: Leaving directory `/cygdrive/c/Projects/toolchains/gnuarm/gcc-build/gcc' make[1]: *** [stmp-multilib] Error 2 make[1]: Leaving directory `/cygdrive/c/Projects/toolchains/gnuarm/gcc-build/gcc' make: *** [all-gcc] Error 2 Configure line is: ../gcc-4.2.0/configure --target=arm-elf --prefix=/usr/local/toolchains --enable-interwork --enable-multilib --enable-languages="c,c++,objc,obj-c++,java" --with-newlib --with-headers=../newlib-1.15.0/newlib/libc/include --with-cpu=arm946e-s --with-fpu=fpa gcc/config/t-arm-elf: ============================================================================================= LIB1ASMSRC = arm/lib1funcs.asm LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_tls _bb_init_func _call_via_rX _interwork_call_via_rX # We want fine grained libraries, so use the new code to build the # floating point emulation libraries. FPBIT = fp-bit.c DPBIT = dp-bit.c fp-bit.c: $(srcdir)/config/fp-bit.c echo '#define FLOAT' > fp-bit.c echo '#ifndef __ARMEB__' >> fp-bit.c echo '#define FLOAT_BIT_ORDER_MISMATCH' >> fp-bit.c echo '#endif' >> fp-bit.c cat $(srcdir)/config/fp-bit.c >> fp-bit.c dp-bit.c: $(srcdir)/config/fp-bit.c echo '#ifndef __ARMEB__' > dp-bit.c echo '#define FLOAT_BIT_ORDER_MISMATCH' >> dp-bit.c echo '#define FLOAT_WORD_ORDER_MISMATCH' >> dp-bit.c echo '#endif' >> dp-bit.c cat $(srcdir)/config/fp-bit.c >> dp-bit.c MULTILIB_OPTIONS = marm/mthumb MULTILIB_DIRNAMES = arm thumb MULTILIB_EXCEPTIONS = MULTILIB_OPTIONS += mlittle-endian/mbig-endian MULTILIB_DIRNAMES += le be MULTILIB_EXCEPTIONS = MULTILIB_MATCHES = mbig-endian=mbe mlittle-endian=mle MULTILIB_OPTIONS += mhard-float/msoft-float MULTILIB_DIRNAMES += fpu soft MULTILIB_EXCEPTIONS += *mthumb/*mhard-float* # MULTILIB_OPTIONS += mapcs-32/mapcs-26 # MULTILIB_DIRNAMES += 32bit 26bit # MULTILIB_EXCEPTIONS += *mthumb/*mapcs-26* MULTILIB_OPTIONS += mno-thumb-interwork/mthumb-interwork MULTILIB_DIRNAMES += normal interwork MULTILIB_EXCEPTIONS += *mapcs-26/*mthumb-interwork* MULTILIB_OPTIONS += fno-leading-underscore/fleading-underscore MULTILIB_DIRNAMES += elf under MULTILIB_OPTIONS += mcpu=arm7 MULTILIB_DIRNAMES += nofmult MULTILIB_EXCEPTIONS += *mthumb*/*mcpu=arm7* # Note: the multilib_exceptions matches both -mthumb and # -mthumb-interwork # # We have to match all the arm cpu variants which do not have the # multiply instruction and treat them as if the user had specified # -mcpu=arm7. Note that in the following the ? is interpreted as # an = for the purposes of matching command line options. # FIXME: There ought to be a better way to do this. MULTILIB_MATCHES += mcpu?arm7=mcpu?arm7d MULTILIB_MATCHES += mcpu?arm7=mcpu?arm7di MULTILIB_MATCHES += mcpu?arm7=mcpu?arm70 MULTILIB_MATCHES += mcpu?arm7=mcpu?arm700 MULTILIB_MATCHES += mcpu?arm7=mcpu?arm700i MULTILIB_MATCHES += mcpu?arm7=mcpu?arm710 MULTILIB_MATCHES += mcpu?arm7=mcpu?arm710c MULTILIB_MATCHES += mcpu?arm7=mcpu?arm7100 MULTILIB_MATCHES += mcpu?arm7=mcpu?arm7500 MULTILIB_MATCHES += mcpu?arm7=mcpu?arm7500fe MULTILIB_MATCHES += mcpu?arm7=mcpu?arm6 MULTILIB_MATCHES += mcpu?arm7=mcpu?arm60 MULTILIB_MATCHES += mcpu?arm7=mcpu?arm600 MULTILIB_MATCHES += mcpu?arm7=mcpu?arm610 MULTILIB_MATCHES += mcpu?arm7=mcpu?arm620 EXTRA_MULTILIB_PARTS = crtbegin.o crtend.o crti.o crtn.o # If EXTRA_MULTILIB_PARTS is not defined above then define EXTRA_PARTS here # EXTRA_PARTS = crtbegin.o crtend.o crti.o crtn.o LIBGCC = stmp-multilib INSTALL_LIBGCC = install-multilib # Currently there is a bug somewhere in GCC's alias analysis # or scheduling code that is breaking _fpmul_parts in fp-bit.c. # Disabling function inlining is a workaround for this problem. TARGET_LIBGCC2_CFLAGS = -Dinhibit_libc -fno-inline # Assemble startup files. $(T)crti.o: $(srcdir)/config/arm/crti.asm $(GCC_PASSES) $(GCC_FOR_TARGET) $(GCC_CFLAGS) $(MULTILIB_CFLAGS) $(INCLUDES) \ -c -o $(T)crti.o -x assembler-with-cpp $(srcdir)/config/arm/crti.asm $(T)crtn.o: $(srcdir)/config/arm/crtn.asm $(GCC_PASSES) $(GCC_FOR_TARGET) $(GCC_CFLAGS) $(MULTILIB_CFLAGS) $(INCLUDES) \ -c -o $(T)crtn.o -x assembler-with-cpp $(srcdir)/config/arm/crtn.asm =================================================================================== Any ideas what the error could be? Thanks, - Alex