Hi there!
I tried to compile your current CVS Fiasco with the SA1100 ARM CPU target with all other options at default. I used the, at www.arm.com officially mentioned, GNU Toolchain for ARM Processors from www.codesourcery.com. Both target platform versions arm-bare-gcc-3.4.4 (target platform bare metal) and arm-linux-gcc-3.4.4 (target platform linux) fail at final linking with the attached error message. Maybe, I'm using the wrong arm-linux-compiler. What am I doing wrong? Are other mandatory configuration settings? What ARM compiler are you using?
Best regards Marko
######### with arm-bare-gcc-3.4.4 ##########
==> Linking fiasco.image arm-linux-ld: Warning: size of symbol `__DTOR_LIST__' changed from 4 in libc.a(construction.o) to 8 in /opt/arm-bare-gcc-3.4.4/bin/../lib/gcc/arm-none-eabi/3.4.4/libgcc.a(_ctors.o) arm-linux-ld: Warning: size of symbol `__CTOR_LIST__' changed from 4 in libc.a(construction.o) to 8 in /opt/arm-bare-gcc-3.4.4/bin/../lib/gcc/arm-none-eabi/3.4.4/libgcc.a(_ctors.o) arm-linux-ld: section .excp [c0026000 -> c002697f] overlaps section .bss._ZGVZN23mapping_tree_allocators8instanceEvE15tree_allocators [c0026000 -> c0026003] arm-linux-ld: section .bss._ZZN23mapping_tree_allocators8instanceEvE15tree_allocators [c0026004 -> c0026027] overlaps section .excp [c0026000 -> c002697f] uart_console.o: In function `uart_console_init_stage1()':uart_console.cc: (.text._Z24uart_console_init_stage1v+0x88): undefined reference to `__aeabi_atexit' kernel_uart.o: In function `Kernel_uart::uart()':kernel_uart.cc: (.text._ZN11Kernel_uart4uartEv+0x3c): undefined reference to `__aeabi_atexit' kernel_console.o: In function `Kconsole::console()':kernel_console.cc: (.text._ZN8Kconsole7consoleEv+0x50): undefined reference to `__aeabi_atexit' mapdb.o: In function `Mapdb::~Mapdb()':mapdb.cc:(.text._ZN5MapdbD1Ev+0xe4): undefined reference to `__aeabi_atexit' mapdb.o: In function `Mapdb::~Mapdb()':mapdb.cc:(.text._ZN5MapdbD2Ev+0xe4): undefined reference to `__aeabi_atexit' mapdb.o:mapdb.cc:(.text._ZN5Mapdb4freeEP7Mapping+0x270): more undefined references to `__aeabi_atexit' follow /opt/arm-bare-gcc-3.4.4/bin/../lib/gcc/arm-none-eabi/3.4.4/libgcc.a(unwind-arm.o): In function `get_eit_entry':unwind-arm.c:(.text+0x45c): undefined reference to `__exidx_start' :unwind-arm.c:(.text+0x460): undefined reference to `__exidx_end' /opt/arm-bare-gcc-3.4.4/bin/../lib/gcc/arm-none-eabi/3.4.4/libgcc.a(unwind-arm.o): In function `unwind_phase2':unwind-arm.c:(.text+0x4c8): undefined reference to `abort' /opt/arm-bare-gcc-3.4.4/bin/../lib/gcc/arm-none-eabi/3.4.4/libgcc.a(unwind-arm.o): In function `__gnu_Unwind_Resume':unwind-arm.c:(.text+0x6f4): undefined reference to `abort' make[3]: *** [fiasco.image] Fehler 1
######### with arm-linux-gcc-3.4.4 ##########
==> Linking fiasco.image arm-linux-ld: Warning: size of symbol `__CTOR_LIST__' changed from 4 in libc.a(construction.o) to 8 in /opt/arm-linux-gcc-3.4.4/bin/../lib/gcc/arm-none-linux-gnueabi/3.4.4/libgcc.a(_ctors.oS) arm-linux-ld: Warning: size of symbol `__DTOR_LIST__' changed from 4 in libc.a(construction.o) to 8 in /opt/arm-linux-gcc-3.4.4/bin/../lib/gcc/arm-none-linux-gnueabi/3.4.4/libgcc.a(_ctors.oS) arm-linux-ld: section .excp [c0026000 -> c002697f] overlaps section .bss._ZGVZN23mapping_tree_allocators8instanceEvE15tree_allocators [c0026000 -> c0026003] arm-linux-ld: section .bss._ZZN23mapping_tree_allocators8instanceEvE15tree_allocators [c0026004 -> c0026027] overlaps section .excp [c0026000 -> c002697f] uart_console.o: In function `uart_console_init_stage1()':uart_console.cc: (.text._Z24uart_console_init_stage1v+0x80): undefined reference to `__aeabi_atexit' kernel_uart.o: In function `Kernel_uart::uart()':kernel_uart.cc: (.text._ZN11Kernel_uart4uartEv+0x38): undefined reference to `__aeabi_atexit' kernel_console.o: In function `Kconsole::console()':kernel_console.cc: (.text._ZN8Kconsole7consoleEv+0x4c): undefined reference to `__aeabi_atexit' mapdb.o: In function `Mapdb::~Mapdb()':mapdb.cc:(.text._ZN5MapdbD1Ev+0xd8): undefined reference to `__aeabi_atexit' mapdb.o: In function `Mapdb::~Mapdb()':mapdb.cc:(.text._ZN5MapdbD2Ev+0xd8): undefined reference to `__aeabi_atexit' mapdb.o:mapdb.cc:(.text._ZN5Mapdb4freeEP7Mapping+0x13c): more undefined references to `__aeabi_atexit' follow /opt/arm-linux-gcc-3.4.4/bin/../lib/gcc/arm-none-linux-gnueabi/3.4.4/libgcc.a(_divdi3.oS): (.ARM.exidx+0x0): undefined reference to `__aeabi_unwind_cpp_pr0' /opt/arm-linux-gcc-3.4.4/bin/../lib/gcc/arm-none-linux-gnueabi/3.4.4/libgcc.a(_udivdi3.oS): (.ARM.exidx+0x0): undefined reference to `__aeabi_unwind_cpp_pr0' make[3]: *** [fiasco.image] Fehler 1