GP32 Various Help With Eabi In Gp32


Optimus

Member
Joined
May 8, 2005
Messages
339
Age
44
Location
Greece
Website
optimus.untergrund.net
Yep, I decided to get back to GP32 coding for a while ;P

0) What is EABI? What does E.A.B.I. stands for? What's the difference from the older devkits? And why things have doesn't work or have to be recompiled for EABI? Am I gonna gain someting by switching to the new devkit?

1) I installed devkitpro and it seemed cool. I tried to compile my old demo Led Blur. Then I have seen the old gamepark SDK I was using was EABI 0 and should be recompiled. Fortunatelly I downloaded http://www.distant-earth.com/gp32/GPSDK_EABI.rar

2) All ok till it had error because I also used CHN modplay and the libmodplay.a was compiled without EABI. I should recompile the lib again (I will return to this in 4)

3) I first removed the lines where I call and include modplay and -lmodplay from my makefile just to make sure that the rest compiles well. There was still a problem I don't know what it is:

....blah blah dirs/libc.a(syscalls.o): In function '_sbrk':
syscalls.c: undefined reference to 'end'

It's a problem having to do with gamepark SDK or something?

4) Also, I downloaded the latest CHN modplayer and tried to compile them with EABI too.
.../SDL_types.h: error: size of array 'SDL_dummy_enum' is negative
(does the new CHN modplay lib use SDL? Is it necessary in my project???)

I know this error happened to me once and all I needed to correct the problem was to remove a line in my makefile saying -short enum or something. But the makefile of the lib DOESN'T have this line. And now I wonder what to do?

HELP!
 
UPDATE:

Ok, the modplay DID compile (produced an .a lib file)

I was running the makefile which also had an example on how to play (this example also used SDL but not the main lib. Although do I need to use SDL to use the lib for sound? (In an old project with old DevkitARM I get now no sound but I'll see) or is the lib independent of SDL and SDL is only used for the example?

Anyways,. the only problem remaining to compile with the new EABI is the syscalls.c: undefined reference to 'end' which only has to do with the GPSDK code or sometihng else. If I get not answer/solution I may stick to the old devkitarm.
 
Hi there,

Yep, a lot of things changed when dkpro passed to the eabi thing...

1) For all i know eabi is that you will have to recompile everything from scratch (including chui sdk libs or either use DJWillis EABI_GPSDK), sadly as each programmer did things in different ways, it is hard to make old demos works with new dkpro without rebuild again.

3) For what i remember, from the assembly startup code of the gp32 (crt0.s or else) there were some calls to initiliaze the hardware that were in syscalls.c. the directive -DREENTRANT_SYSCALLS_PROVIDED was useful for me, and also i called this startup code from my main function ... Check some of my old threads for a better explanation on setting up the latests version of dkpro and the gp...

These days i was trying to make a new port of the gp32 scummvm using chui's SDL instead of DJWillis SDK, i was able to port a lot of things including ogg, pthreads, but i now im having problems with file access functions of the x_gp32 lib.

Im not sure if the eabi dkpro is better than the old elf, but im sure that C++ and STL works better, and i could even debug via usb cable with the arm-eabi-insight tool.

Good luck and good to knew that the geepee is not dead

@B^)>
 
Back
Top