Aquaria Port - Compiled, Linked, Almost launching! - Any Help?


Still Fresh
Mar 8, 2011
Hey all, my first contribution to the community: Porting Aquaria!

Why? Because it's pretty, and if we can't port open source indie games to our pandies, what the hell good are we anyways, right?

Progress so far:

-stealing OpenAL arm libraries from pickle's Gish port (Thank you SO much for those! We really need a library repo...)

-compiling an ARM architecture aquaria binary

-putting game data in a reachable directory

-building my first .pnd (yay)

What's gone wrong:

.pnd sets clockspeed and dies!

Copying the binary and data to an SD card and executing it directly revealed the openAL library couldn't be found. After providing the openAL library, it instead crashed saying it couldn't find the opengl library.

Not in the traditional way though; it was being called by the application post-execution by these line(s) of code:

if (SDL_GL_LoadLibrary(NULL) == -1)


errorLog(std::string("SDL_GL_LoadLibrary Error: ") + std::string(SDL_GetError()));




Error message stated simply 'Can't load library <name of library here>'.

tonight I'll use strace to figure out why; whether it cannot find it (I tried altering the source code to provide a direct path instead of null), of if it is finding it and not liking it for some unspecified reason.

The thing that confuses me is this was built using a cross-compiling environment setup using a script from elsewhere in these forums. That environment seemed to believe this library would exist in the pandora's NAND; but I couldn't find it there.

I could care less if it'll work after I stuff that library in the .pnd as well and modify paths/source the right way, but I'm concerned this might lead to weird problems after I fix the gl library loading part.

Advice or insight into what's going on here would be helpful if anybody has any ideas.

Otherwise, advising how best to make a .pnd that allows the user to dump their aquaria data files in a logical place and play it with ease would also be welcome. :) I confess I'm a little fuzzy at how .pnd launched apps decide where $home is.


Edit: Don't recall the actual name of the library because i'm an ignoramus.

Also, I'm at work and am supposed to be deploying servers. ^.^
Last edited by a moderator:
Use LD_PRELOAD to .. preload .. the libraries that ldd tells you are needed by the executable, then wrap this up in a starter script .. ?
A simple recompile isnt going to work, the opengl code has to be dealt with. As mentioned there is an iOS port that has ES 1.X ans 2.0 ES code.

I had started to attempt to get the ES 2.0 code working but it kind of went into standby and i havnt been back to it in a while.
This does sound really good Wally, do you think you can solve that?

If not, maybe you could put up the source somewhere, so others could have a look?
Is the project dead or are you still working?

I would really like to see this game on my Pandora.
I'm not sure what's going on, but this just might be my top game I want ported.

As such, I am now turning this into a bounty. I'll pay $10 for this game ported.