gbadev.org forum archive

This is a read-only mirror of the content originally found on forum.gbadev.org (now offline), salvaged from Wayback machine copies. A new forum can be found here.

DS development > need help with eabi compiler arm7

#109174 - sniper - Wed Nov 15, 2006 8:44 pm

Hello,

I am stuck with my DS project. I switched from GCC ELF to EABI (devkitPRO 19b) and now I get a linker error while compiling my ARM7 project. Maybe someone already had this ?
Code:

Invoking: GCC C++ Linker
arm-eabi-gcc ./src/main.o ./src/memhandler.o ./src/memloader.o ./src/myipc.o    -mno-fpu -lmikmod7 -lmylibnds7 -L"C:\prog\Code\devkitPro\libnds\lib" -L"C:\data\eclipse\workspace_CDT\mylibnds7\Release" -L"C:\data\eclipse\workspace_CDT\mikmod7\Release" -L"C:\data\eclipse\workspace_CDT\ministdlib7\Release" -Wl,-Map,arm7.elf.map -mthumb-interwork -specs=ds_arm7.specs -o"arm7.elf"
c:/prog/code/devkitpro/devkitarm/bin/../lib/gcc/arm-eabi/4.1.1/../../../../arm-eabi/bin/ld.exe: error: no memory region specified for loadable section `.itcm'


I am trying to compile around 60k arm7 binary which should fit into the local memory. I'm using the ds_arm7.specs. Same error on windows and linux x86.

Probably I have to change the linker script ?

ciao
Sniper

#109181 - OOPMan - Wed Nov 15, 2006 10:07 pm

Are you using a custom arm7 libnds?

That's what it looks like from the compile options...

Could this be a problem?
_________________
"My boot, your face..." - Attributed to OOPMan, Emperor of Eroticon VI

You can find my NDS homebrew projects here...

#109210 - josath - Thu Nov 16, 2006 1:58 am

It seems to be saying that you are trying to put something in ITCM from the arm7. I think usually the ITCM is only used by arm9, this might be the reason it's complaining. Search through all your code (including your custom libnds) for any occurances of itcm or ITCM.

#109328 - sniper - Fri Nov 17, 2006 7:58 am

Ok I'll looking for it.
Thanks for reply.

Edit: Ok found it. The problem was my custom libnds. Wrong preprocessor symbols for the asm code =)