Instalar SDK para Nintendo DS en Linux

Este howto esta orientado a aquellos usuarios de Linux (o cualquier plataforma Unix), aunque me enfoco en Ubuntu (8.04), las ideas y principios son aplicables a cualquier distribución Linux o entorno Unix.

Primero lo más fácil, para  poder probar nuestros programas necesitamos un emulador, en nuestro caso usaremos el DeSmuME. Tenemos dos opciones, la primera es descargar las fuentes y compilar el paquete; la segunda es usar apt-get para instalar el emulador que forma parte de la distribución. Lógicamente utilizaremos la segunda opción por ser la más conveniente, para ello debemos ejecutar el comando:

$ sudo apt-get install desmume

Después de que ha descargado todas las dependencias e instalado el programa podremos ver si funciona correctamente invocando el emulador de esta manera, desde una consola:

$ desmume –disable-3d

(Ojo: son dos signos "-" antes de la palabra disable, en algunos browsers el renderizado lo reemplaza por un guión largo)

Tras lo cual debemos ver una ventana como la siguiente:

DeSmuME

 
Cerramos el emulador haciendo click sobre el boton "Quit". Ahora continuaremos con la instalación del SDK.

Lo primero que debemos hacer es descargar todos estos paquetes que necesitaremos para poder configurar nuestro SDK:

$ mkdir ~/tmp
$ cd ~/tmp
$ wget http://sourceforge.net/projects/devkitpro/files/devkitARM/devkitARM_r26-i686-linux.tar.bz2/download
$ wget http://sourceforge.net/projects/devkitpro/files/libnds/libnds%201.3.8/libnds-1.3.8.tar.bz2/download
$ wget http://downloads.sourceforge.net/project/devkitpro/libfat/libfat-ogc-1.0.5.tar.bz2?use_mirror=voxel
$ wget http://downloads.sourceforge.net/project/devkitpro/dswifi/dswifi%200.3.9/dswifi-0.3.9.tar.bz2?use_mirror=voxel
$ wget http://downloads.sourceforge.net/project/devkitpro/default%20arm7/default_arm7-0.5.6.tar.bz2?use_mirror=voxel
$ wget http://downloads.sourceforge.net/project/devkitpro/examples/nds/nds%20examples%2020090730/nds-examples-20090730.tar.bz2?use_mirror=voxel

Cuando haya terminado de descargar todos esos archivos, procederemos a instalar nuestro SDK de la siguiente manera:

$ cd ~/
$ mkdir ~/devkitPro
$ cd ~/devkitPro
$ tar -jxvf ~/tmp/devkitARM_r26-i686-linux.tar.bz2
$ mkdir libnds
$ cd libnds
$ tar -jxvf ~/tmp/libnds-1.3.8.tar.bz2
$ tar -jxvf ~/tmp/libfat-ogc-1.0.5.tar.bz2
$ tar -jxvf ~/tmp/dswifi-0.3.9.tar.bz2
$ tar -jxvf ~/tmp/default_arm7-0.5.6.tar.bz2

Ahora para instalar los ejemplos procederemos de la siguiente manera:

$ cd ~/devkitPro
$ mkdir examples
$ cd examples
$ tar -jxvf ~/tmp/nds-examples-20090730.tar.bz2

Ya casi hemos terminado. Para poder utilizar nuestro SDK debemos de ejecutar estos comandos para setear las variables que utiliza el SDK para poder operar:

$ export DEVKITPRO=~/devkitPro
$ export DEVKITARM=$DEVKITPRO/devkitARM
$ export PATH=$PATH:$DEVKITARM/bin

Podemos si lo deseamos agregar dichas líneas al final del archivo ~/.bashrc, de esa forma no tendremos que tipear otra vez los comandos la próxima vez que deseemos usar nuestro SDK.

Listo, para verificar si todo nuestro esfuerzo no ha sido en vano, compilaremos el ejemplo hello_world, para ello seguiremos los siguientes pasos:

$ cd ~/devkitPro/examples/hello_world
$ make

Y deberíamos de observar algo como la siguiente imagen, si es que hemos seguido exitosamente los pasos anteriores:

devkitARM make results

 
Ahora para poder probar que esta funcionando nuestro programa usaremos el emulador de la siguiente manera:

$  desmume-cli hello_world.nds

Y de ser exitoso deberíamos de observar algo como esto:

Hello World

 

(Para ver en mayor detalle haga click sobre la imagen para poder observar a escala 1:1 en una nueva pestaña).

 
Hasta aquí nuestro tutorial sobre como configurar el SDK y el emulador DeSmuME en Linux, para poder desarrollar nuestras propiar aplicaciones para dicha consola de juego, espero que les haya servido y me dejen sus opiniones o comentarios sobre el mismo.

Un comentario en «Instalar SDK para Nintendo DS en Linux»

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.