Im having problems when I define global variables in a basic C program for an ARM9 processor. I\'m using EABI GNU compiler and the binary generated from a 12KB elf is 4GB! I
You are creating a file which will starts at address 0x01000000 and will contains at least up to address 0xFFFF0000. No wonder that it is nearly 4GB. What would you like? Try with options -R to remove the data segments if you don't want them (as it is probably the case if you are preparing a ROM initialization file).