Hi All...
Is anyone using a DevKitAdv based on GCC 3.2 with the lnkscript and
crt0.S from devrs.com? Or the gba.x and crt0.S from Dark Fader's
MyLib? Here's the relevant background information:
I have a nearly completed game written in C++ using DevKitAdv (based
on GCC 3.0.2). Its working pretty well, but I'd really like to
upgrade to GCC 3.2 because of the better C++ code it produces. This
group pointed me to Thomas Maniero's DevKitAdv/GCC3.2 binaries at
http://digilander.libero.it/funnybits/devkitadv.html. These binaries
were a great help, but I'm still having some problems.
I'm using gba.x and crt0.S that came with Dark Fader's MyLib.
They're based on the crtls.zip from devrs.com (which I've also tried,
with no luck). The first problem I ran into when using GCC 3.2 was a
linker error:
section .iwram [08185738 -> 08187a13] overlaps
section .gcc_except_table [08183c18 -> 0818575b]
I eventually tracked this down to the fact that GCC 3.2 is apparently
adding 3 new sections that were not created by GCC
3.0.2: .init, .fini, and .jcr. Once I added these to the link script
and included them in the LMA calculations, I was able to link
sucessfully. Unfortunately, the two emulators I've tried (VisualBoy
Advance and Mappy) both choke on this exectuable. I simply get a
blank white screen. The same application built using GCC 3.0.2 works
just fine. Since I know next to nothing about link scripts (the
changes I made to get it to link were merely guesses) I'm fairly
confident in saying that my link script is somehow causing the
problem.
I'd be happy to post my link script or a sample application if anyone
thinks it might help. But mostly I'm hoping that someone here is
using Thomas Maniero's version of DevKitAdv (or another version based
on GCC 3.2) successfully with a link script and crt0.s similar to
those in devrs.com's crtls.zip or Dark Fader's MyLib. If so, I'd
love to see your link script!
Thanks!
Kevin