projectdp

ASCIIpOrtal and aaquake2 (Fail) on Pi

Posted in projects by projectdp on October 1, 2012

Hello again!

I wanted to showcase some games on the Pi over my Kindle after my last project ‘Pi k3w‘, but apparently I’m not able to do so. Let me show you the two games before I go into how I tried to compile the programs:

ASCIIpOrtal by Cymon’s Games: http://cymonsgames.com/asciiportal/

This game is really cool and I played it a year or two ago on my Windows machine. I just recently bought and beat Portal 2, so I got inspired to play it again on the Pi.

aaquake2 by jfedor:

This is sweet, I heard about it on the mobilereads forum here from a user named twobob: http://www.mobileread.com/forums/showthread.php?p=2237554#post2237554

I’d really like to get this working on the Pi itself, even if I can’t get it on the Pi and Kindle.

ASCIIpOrtal Compile Attempt:

I tried and failed at using the precompiled linux binary on the website. It was built for a different architecture. I went directly to compiling from source. I tried that but ran into several errors. They seemed like serious errors so I approached Sam Heybey for assistance since he built the linux binary. He gave me some preliminary install instructions:

As root, update and get the dependencies:

apt-get update

apt-get install libsdl-mixer1.2 libsdl-mixer1.2-dev libsdl1.2debian-alsa libsdl1.2-dev build-essential

Now I tried this on the Pi and it failed on libsdl1.2debian-alsa giving the following error:

Package libsdl1.2debian-alsa is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
However the following packages replace it:
libsdl1.2debian

So I just replaced the name libsdl1.2debian-alsa with libsdl1.2debian.

He gave me some advice and a new Makefile because the one included in the source was bogus and buggy. Here is the new Makefile that Sam sent me:

http://pastebin.com/TxDsNBHF

I made a file in the asciiportal directory: touch Makefile. I then appended the Makefile contents and did a chmod +x Makefile. Sam also mentioned that I should also set the following variables:

 export CC=gcc
export CXX=g++

Then issue the make command: make.

It is still failing, the issue has to do with PDCurses. I’m getting this error:

gcc -O2 -Wall -I..  -o firework ../demos/firework.c libpdcurses.a -L/usr/lib/arm-linux-gnueabihf -lSDL
/usr/bin/ld: libpdcurses.a(initscr.o)(.text+0x320): unresolvable R_ARM_ABS32 relocation against symbol `ttytype’
/usr/bin/ld: final link failed: Nonrepresentable section on output
collect2: ld returned 1 exit status
make[1]: *** [firework] Error 1
make[1]: Leaving directory `/home/projectdp/asciiportal/PDCurses-3.4/sdl1′
make: *** [PDCurses-3.4/sdl1/libpdcurses.a] Error 2

That’s the end of the line for me, I don’t really know how to go further from this point. Can anyone help get over this PDCurses stumbling block?

aaquake2 Compile Attempt:

I followed the instructions here: http://www.jfedor.org/aaquake2/

I can’t even get aalib installed correctly. It fails giving me the following error:

checking host system type… Invalid configuration `armv6l-pc-linux-gnu’: machine `armv6l-pc’ not recognized

That’s as far as I get. I tried compiling quake on it’s own without aalib and I was still getting streams of errors. I just really don’t know what I’m doing with this cross-compiling business.

Can anyone help get aaquake2 and ASCIIpOrtal up and running on the Pi? I’M FAILING HARD ❤