GP2X Working Crosscompile Of Arm-linux Binaries


timbobsteve

Member
Joined
Oct 4, 2005
Messages
301
Hey all,

I seem to have got a Cross-compile of the arm-linux binaries to work but I have no way of testing them. Can someone help me out testing my environment, I have no GP2X yet.

If someone could post some test code ( known to work on GP2X ) I will compile a test binary and post it for someone to test.

Also, the crosstool directory that my binaries are in have a bunch of duplicate directories in them with the same contents. Is it safe to remove the duplicate directories/files to bring down the overall size of my toolkit?

e.g.

/opt/crosstool/arm-linux/arm-linux-glibc-3.4.5/bin/arm-linux-g++
/opt/crosstool/arm-linux/arm-linux-glibc-3.4.5/arm-linux/bin/g++ (duplicate file)
/opt/crosstool/arm-linux/arm-linux-glibc-3.4.5/include/*
/opt/crosstool/arm-linux/arm-linux-glibc-3.4.5/arm-linux/include/ (duplicate directory)

etc.

Is it safe to remove all the duplicates... it doesn't make sense to have the binaries duplicated so many times.

Anyways... once I get this working and tested, I will post a package containing the complete linux dev env. (binaries/libs/SDL) for other linux users, as well as include it in GP2niX (GP2X Developer Linux Distro)

Thanks for any help you can give me on this matter.
 
Here is some code that I wrote to test my GP2X. It just cycles through some colors then exits.

There are two makefiles. I use Makefile for building the example under Linux and Makefile.gp2x for building using my cross-compiler environment (make -f Makefile.gp2x).

gp2x-test Code

Hope this helps.
--Jeff
 
Thanks Jboody,

If i compile this with my toolkit and upload it, can you test it on your GP2X unit?

Thanks again.
 
Hi Jeff,

Here is the link to my test compile.

GP2X Test Binary

I also managed to download the Leaked GPH SDK from GP32Spain.com I will inlclude this in GP2niX as well as my Toolchain (as long as this test goes OK)

Thanks again for your help on this Jeff.
 
Sure,

Are you interested in working with me on GP2niX ? With a little help I can probably get a working release (LiveCD) in about a week.

Is SGE linux based? or is it just libraries (sry don't know much about it)

Thankyou very much for your help with the toolchain. I am most excited/relieved/exstatic that it worked (it means I can dev for my unit when it arives)

I will put up a webpage soon for GP2niX... and I also welcome any help I can get.

Thx again Jeff
 
Yeah, I would be happy to help you. I was planning on creating a Knoppix based Live-CD anyway for my game engine. But it sounds like you are doing something more general than what I had planned so that is probably better.

I did develop the SGE under Linux (see the doc/readme.html file in the download directory for directions on how to install). I also use the leaked GPH SDK that you are also using so I think all you would need to add besides my engine is the freetype, png and Lua libraries (currently I am compiling the SDL_image and SDL_ttf libraries directly into my app because I am having problems linking with publically available libs).

I will work on some directions for setting up the cross compiler environment with my engine.

--Jeff
 
Actually I am yet to try using the Leaked GPH SDK. I was using my own cross-compiled toolchain to compile the test bin you gave me.

If you have a copy of the GPH SDK, can you tell me what version of GCC / glibc / SDL they have included?

ATM GP2niX has the following:

[System]
- Based on Slackware 10.2 (latest)
- X (basic setup)
- Fluxbox
- fbdesk (icons and desktop manager for Fluxbox)
- X-Pkgtool (install more packages when required)
[Developer]
- Original arm-linux toolchain
- SciTE (basic text editor with syntax highlighting and gcc integration)
- SDL runtime libraries
- SDL for GP2X (files from gp32x.de archive "gp2x-libs.tar.gz")

[TODO]
- Add jboody's SGE (libFreeType, libPNG and libLUA)
- Add native SDL Developer libraries and remove SDL-Runtime
- Strip unrequired files [man pages etc.]
- Create standard developer user for LiveCD
- Add configuration option for GP2X Develoment under SciTE
- Configure Asthetics (GP2niX Themes etc)

At the moment the entire system is just over 1GB. This has to be drastically reduced to be usable. Manual files and unneccessary libraries are most likely the best place to start culling space. There is also alot of tmp stuff that was used during the CrossTool process (actually crosstool used alot of space)

My own toolchain is roughly 120M (and can probably be stripped more)

Overall I think the image is going to be around 500 Mb. Is this acceptable to the community?

Anyways, if you want jboody, you can be my tester? I can probably whip up a release in a couple of nights now that I know my toolchain works!

I will re-post this under a new thread also, It will be my first official GP2niX thread... WooHoo!!!
 
Last edited by a moderator:
timbobsteve posted on Dec 19 2005 at 03:37 AM said:
Overall I think the image is going to be around 500 Mb. Is this acceptable to the community?

andLinux is about 500MB and I have quite a bit more users then I thought. If it is a useful tool, people will excuse the size... I guess.

You are more then welcome to use the tools in andLinux for your system. I have the GP2X kernel sources (make dep complete), 4.02 gcc-softfloat and the SDL libs on it. They are all in /opt/gp2x. I will be spawning them off in a few days, but you are more then welcome to grab andLinux and tar up /opt/gp2x to move over to your system. They have been tested and seem to work nicely.

I compiled the SDL libs with the following (in case you want to add or update any) "./configure --host=arm-softfloat-linux --target=arm-softfloat-linux --prefix=/opt/gp2x/arm-dev --enable-video-fbcon --disable-video-qtopia --disable-video-photon --disable-video-direct --disable-video-ggi --disable-video-svga --disable-video-aalib --disable-video-dummy --disable-video-dga --disable-arts --disable-esd --disable-alsa --disable-video-x11 --disable-nasm --disable-debug --disable-joystick-amigaos --disable-joystick-beos --disable-joystick-bsd --disable-joystick-darwin --disable-joystick-dc --disable-joystick-linux --disable-joystick-macos --disable-joystick-mint --disable-joystick-win32 --disable-shared"

David
 
Last edited by a moderator:
Back
Top