Desarrollo de videojuegos para PSP con C++ y SDL/Instalación

Dependencias editar

Lo primero que debemos hacer es instalar las dependencias del kit de desarrollo de PSP. Para ello abriremos una terminal e introduciremos el siguiente comando:


sudo apt-get  install build-essential autoconf automake bison flex \
	libncurses5-dev libreadline-dev libusb-dev texinfo libmpfr-dev \
	libgmp3-dev libtool


Variables de entorno editar

Ahora debemos establecer algunas variables de entorno para que el sistema sepa dónde encontrar las nuevas librerías de PSP a la hora de compilar. Editamos el fichero ~/.bashrc y añadimos al final las siguientes líneas:


export PSPDEV="/usr/local/pspdev"
export PSPSDK="$PSPDEV/psp/sdk"
export PATH="$PATH:$PSPDEV/bin:$PSPSDK/bin"


Cuando reiniciemos el equipo ~/.bashrc volverá a cargarse pero no es necesario hacerlo, podemos ejecutar la siguiente orden:


syntaxhighlight ~/.bashrc

Instalación del SDK de PSP editar

El siguiente paso es descargarnos una copia del directorio trunk del repositorio de ps2dev, el cual contiene todo lo que necesitamos (y más). El repositorio tiene un tamaño considerable y, dependiendo de cómo ande el servidor, puede tardar bastante.


svn co svn://svn.ps2dev.org/psp/trunk/ pspsdk


Bueno, si habéis tenido la paciencia suficiente de llegar hasta aquí vamos por buen camino. Ahora toca instalar el toolchain, el kit básico:


cd pspsdk

cd toolchain

sudo ./toolchain-sudo.sh


Existe un pack de bibliotecas adicionales entre las que se encuentran las SDL llamado psplibraries. Este pack contiene: bzip2, freetype, jpeg, libbulletml, libmad, libmikmod, libogg, libpng, libpspvram, libTremor, libvorbis, lua, pspgl, pspirkeyb, SDL, SDL_gfx, SDL_image, SDL_mixer, SDL_ttf, smpeg-psp, sqlite, zlib y zziplib. Muchas son dependencias de las SDL pero algunas como sqlite (bases de datos), lua (lenguaje de scripting) o pspgl (versión de Open GL para PSP) no tienen nada que ver aunque son muy interesantes también. Lo instalamos de la siguiente manera:


cd ..

cd psplibraries

sudo ./libraries-sudo.sh


En teoría ya deberíamos estar listos para crear nuestros proyectos en C++ que usen las SDL para PSP, ¡pero no es así! Debe haber algún error en el script anterior porque SDL_mixer no se instala como debería. Hemos de compilar e instalar sus dependencias manualmente. Comenzamos cambiando el propietario de la carpeta donde se instala el kit de desarrollo, sino las bibliotecas no pueden instalarse (al menos yo no he conseguido hacerlo):


sudo chown -R username:group /usr/local/pspdev
sudo chown username:group /usr/local/pspdev/*


Donde group y username son los nombres de nuestro grupo y usuario en el sistema.

Nos dirigimos a instalar libTremor manualmente, dependencia de SDL_mixer:


cd ..

cd libTremor

LDFLAGS="-L$(psp-config --pspsdk-path)/lib" LIBS="-lc -lpspuser" ./autogen.sh \
     --host psp --prefix=$(psp-config --psp-prefix)
     
make clean

make

make install


Finalmente le toca el turno a SDL_mixer y toca seguir el siguiente proceso:


cd ..

cd SDL_mixer

./autogen.sh

LDFLAGS="-L$(psp-config --pspsdk-path)/lib" LIBS="-lc -lpspuser" \	  
	     ./configure --host psp --with-sdl-prefix=$(psp-config --psp-prefix) \
	     --disable-music-mp3 --prefix=$(psp-config --psp-prefix) \
	     --disable-music-libmikmod --enable-music-mod

make clean

make

make install

Finalizamos editar

Con eso debería bastar, siento el rodeo, si alguien encuentra una manera mejor de instalar el kit de desarrollo para PSP con SDL en GNU/Linux, por favor, que me lo comunique. Entre todos podemos hacer una gran guía.


← Introducción Instalación El makefile →