[Tutorial] Instalacion del SDK de PSP en Linux [Actualizado]

ImagenImagenImagen


Instalacion del entorno de desarrollo libre de PSP, PSPSDK, instalaremos ademas un paquete de librerias adicionales, mas info
Este tutorial se ha realizado prácticamente desde 0, después de la caída de los servidores de PS2DEV definitivamente, se ha usado un equipo con Ubuntu Linux 11.04 64Bits completamente actualizado. Ademas he subido a mi repositorio GIT el SDK y he actualizado unas rutas de unos scripts que apuntaban a PS2DEV, próximamente realizare mas cambios con el fin de dejarlo todo en mi repositorio.

Para empezar el proceso necesitamos instalar una serie de Dependencias
Empezamos:

Instalamos las dependencias y paquetes necesarios
sudo apt-get update && sudo apt-get install subversion build-essential autoconf git automake bison libtool flex make ncurses-dev patch texinfo libreadline5 libreadline5-dev libusb-dev libsdl1.2-dev libgmp3-dev libmpfr-dev libsdl-dev gcc-4.2 gcc-4.3 gcc-4.4 git-core

* Si no os encuentra algun paquete como gcc-4.2 o gcc-4.3, no pasa nada, instalar la version 4.4, las versiones actuales de Ubuntu ya no tienen en los repositorios la 4.2 o 4.3

Descargamos del GIT el PSPSDK, podemos hacerlo en nuestro directorio de usuario /home/tu usuario
git clone git://github.com/AzagraMac/PSP-SDK.git

Despues de esto, el directorio "PSP-SDK" que te crea, sera el que usemos por defecto en las instalaciones, ya que contiene todo!

Entramos en el directorio de la instalacion del SDK
cd PSP-SDK/psptoolchain


Damos permisos de ejecucion al script de instalacion
chmod +x toolchain*


y lanzamos la instalacion, con permisos de root, Para Ubuntu 11.04, en lugar de gcc-4.2, usar gcc-4.4
sudo CC=gcc-4.2 ./toolchain-sudo.sh

o bien asi, dependiendo de la versión de Linux que uses.
sudo CC=gcc-4.3 ./toolchain-sudo.sh

sudo CC=gcc-4.4 ./toolchain-sudo.sh

La instalacion dura varios minutos, dependiendo de la velocidad de tu ADSL y el equipo que tengas.

Agregamos estas lineas al .bashrc de tu usuario

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

Y ejecutamos este comando despues de añadir esas lineas al final del .bashrc
source .bashrc


Entramos en el directorio del SDK
cd /usr/local/pspdev/psp/sdk/


Damos permisos de escritura al directorio samples
chmod -R a+w samples/


Entramos en cualquiera de los ejemplos que hay, para probar si compila correctamente nuestro SDK
Por ejemplo:
cd /usr/local/pspdev/psp/sdk/samples/kernel/kdumper


y lo compilamos:
make


Si todo ha funcionado correctamente, nos saldra una pantalla como esta:

$ make
psp-gcc -I. -I/usr/local/pspdev/psp/sdk/include -O2 -G0 -Wall -D_PSP_FW_VERSION=150   -c -o main.o main.c
psp-gcc -I. -I/usr/local/pspdev/psp/sdk/include -O2 -G0 -Wall -D_PSP_FW_VERSION=150  -L. -L/usr/local/pspdev/psp/sdk/lib   main.o  -lpspdebug -lpspdisplay -lpspge -lpspctrl -lpspsdk -lc -lpspnet -lpspnet_inet -lpspnet_apctl -lpspnet_resolver -lpsputility -lpspuser -lpspkernel -o kdumper.elf
psp-fixup-imports kdumper.elf
mksfo 'Kernel Dumper Sample' PARAM.SFO
psp-strip kdumper.elf -o kdumper_strip.elf
pack-pbp EBOOT.PBP PARAM.SFO NULL  \
                NULL NULL NULL  \
                NULL kdumper_strip.elf NULL
[0]        408 bytes | PARAM.SFO
[1]          0 bytes | NULL
[2]          0 bytes | NULL
[3]          0 bytes | NULL
[4]          0 bytes | NULL
[5]          0 bytes | NULL
[6]      78868 bytes | kdumper_strip.elf
[7]          0 bytes | NULL
/bin/rm -f kdumper_strip.elf
$ ll -h
total 488K
drwxrwxrwx  2 root root 4,0K 2011-05-16 12:35 ./
drwxr-xr-x 13 root root 4,0K 2011-05-01 17:04 ../
-rw-r--r--  1 root root  78K 2011-05-16 12:35 EBOOT.PBP
-rwxr-xr-x  1 root root 373K 2011-05-16 12:35 kdumper.elf*
-rw-rw-rw-  1 root root 4,7K 2011-05-01 17:24 main.c
-rw-r--r--  1 root root 4,6K 2011-05-16 12:35 main.o
-rw-rw-rw-  1 root root  292 2011-05-01 17:24 Makefile
-rw-r--r--  1 root root  408 2011-05-16 12:35 PARAM.SFO


Como ves, a compilado sin problemas, y nos a generado un EBOOT.PBP, listo para meter en la PSP, y el .elf del programa idstorage.
Y ahora instalaremos unas librerias, antes de nada, recomiendo reiniciar el sistema.
Vamos a instalar una serie de Librerias para el Desarrollo de aplicaciones.

Ahora vamos a completar un poco mas el SDK, nos vamos al directorio donde hemos descargado el SDK de PSP, para tenerlo ordenado, mas que nada...
Nos descargamos el tinglao desde el GIT.

PSPLibraries
git clone git://github.com/AzagraMac/psplibraries.git
cd psplibraries
sudo -s
./libraries.sh


Y listo [ginyo]

La version completa de este tutorial, AQUI.
Saludos.

** Próxima Actualización, generar EBOOT.PBP Firmados directamente en la compilación.

Changelog
* Nuevas librerias.
* Añadidos nuevos repositorios GIT en lugar de SVN
* Añadido el Paquete listo para compilar.
Hola,tengo un problema y es que no me encuentra el gcc-4.2 me dice que o está obsoleto o hay otra version?? :(

A todo esto muchas gracias por el tuto. ;)
oooh! gracias apañero.
¿lo tienes tb instalado en la PS3? debe ser una sensacion interesante programarte un homebrew para PSP con la PS3 ¿eh?
Mis respetos por tu trabajo AzagraMac, ya se está difundiendo tu trabajo en otros foros, esperemos salga lago muy bueno de esto.

Saludos.
Buenas, no puedo descargar el psptoolchain, el servidor me rechaza la conexión:
svn co svn://svn.ps2dev.org/psp/trunk/psptoolchain

¿Se puede descargar de algún otro sitio?

Un saludo y gracias.
DestroyerDaemon escribió:Buenas, no puedo descargar el psptoolchain, el servidor me rechaza la conexión:
svn co svn://svn.ps2dev.org/psp/trunk/psptoolchain

¿Se puede descargar de algún otro sitio?

Un saludo y gracias.


ps2dev se cae mucho, hay un mirror pero no se que tan sincronizado esté con el de ps2dev, aunque es totalmente funcional
svn co http://psp.jim.sh/svn/psp/trunk/psptoolchain
Muchas gracias, en un rato lo pruebo.
Actualizado, para que no se archive, si alguien quiere aportar algo, puede hacerlo [oki]
Una ayudita please... cuando hago el sudo CC=gcc-4.2 ./toolchain-sudo.sh

me dice:
sale de varios make
error xq no puede conectar con svn.ps2dev.org

Habria q modificar el script para q busque en el otro site?
Ayuda please
Gracias
ps2dev.org da problemas ultimamente, prueba con el que ha indicado dos posts mas arriba codestation.

Saludos.
si, pero el error q me da el script es del primero, como se modifica para q vaya al ultimo?
Es decir, yo descargue del svn alternativo, pero al ejecutar el sh, es cuando a los 15 minutos me tira el error y me dice q no puede contactar con el svn de ps2dev
Gracias

edit: creo q lo estoy consiguiendo...

hay q modificar varios scripts de la carpeta psptoolchain/scripts, entre ellos como ejemplo el 003, hay q cambiar el svn por el indicado en el mensaje del primer hilo.

Solo hay q hacer un par de cambios, para compilar pspsdk, psplinkusb y alguno mas creo.

Espero q ayude a alguien, xq yo me he vuelto loko...

Gracias
Hola Darkangel:
Pues podrías poner por escrito tus modificaciones, para que Azagramac pueda modificar el post inicial.

Gracias. [beer]
ok, lo subo modificado a un server y lo poneis en el primer post si quereis.
Esta noche os lo paso.
Un saludo

edit: Lo explico brevemente para los q no sepan los cambios q hay q hacer siempre siguiendo los pasos de este tutorial.

Donde pone:
svn co svn://svn.ps2dev.org/psp/trunk/psptoolchain


Usaremos este q indicaba el compañero:
svn co http://psp.jim.sh/svn/psp/trunk/psptoolchain


Esto provoca q tengamos q hacer cambios en los scripts o daran fallos al intentar descargar lo necesario asiq sustituis las carpetas "scripts" por las q os pongo yo ya modificadas y ejecutais ./toolchain.sh

Archivos de psptoolchain: http://www.megaupload.com/?d=H4X6TU54

Lo mismo pasa con las librerias, descargais de aqui:

svn co http://psp.jim.sh/svn/psp/trunk/psplibraries


pero encima hay q cambiar mas veces la misma direccion en los scripts, asiq lo mismo. Os los subo y sustituis.

Archivos de psplibraries: http://www.megaupload.com/?d=VMA09CT7

y despues ./libraries.sh

Yo he seguido este tuto, pero creo q es mas lioso q otro q hay x ahi similar (con el mismo fallo del svn original y la necesidad de los cambios, pero menos pasos en la instalacion original).

Espero q os ayude, al menos a alguno, xq yo he tardado casi 2 dias entre la falta de tiempo, lentitud de mi equipo y demas...

un saludo
Empezare actualizar el tutorial, que va siendo hora!!!


Gracias a todos [oki]
AzagraMac joer no hago mas que toparme con problemas; intento portar el SDK de PSP al linux de PS3 y me sale esto:
israel@PS3ubuntu:~/Descargas/psptoolchain$ sudo CC=gcc-4.2 ./toolchain-sudo.sh
ls: cannot access /usr/include/gmp.h: No such file or directory
ERROR: Install gmp before continuing.
../depends/check-gmp.sh: Failed.
ERROR: Could not run the toolchain script.

En los repositorios no me aparece asi que he instalado la version source de la libreria gmp y nada sigue saltando el mismo fallo.
Un saludo.
Bueno acabo de instalar el SDK en el portatil con exito.
Un saludo.
¡que gozada!, me ha gustado mucho el tuto, ya lo probare cuando tenga adsl, de momento se agradece, un saludo.
No se sabe nada de PS2DEV, no? [triston]
Me parece que ps2dev ha pasado a la historia; de todos modos hay otros enlces alternativos que si funcionan; de hecho he tenido que instalar el SDK de PSP usandolos en vez del de ps2dev; esta mas muerto que la polularidad de ZP [sonrisa] .
Un saludo.
Psmaniaco y CIA

necesito URLs donde poder descargar el toolchain, ya que PS2DEV a pasado a mejor vida [mamaaaaa] toca renovarse, porque sino este tuto no tiene valor ninguno.

Un saludo y gracias a los que aportais con informacion, datos, y contenido. [ginyo] [ginyo] [oki]

Edito:
He encontrado esta: http://psp.jim.sh/svn/?

Tiene aparentemente, todo. Alguien que me confirme. saludos
Esa misma, de hay me he bajado todas las tools del SDK de PS2 y PSP por que la de PS2DEV esta mas tiesa que ...... (mejor no lo digo jajajajaja XD ).
Un saludo.
Me he bajado del svn el directorio "trunk" y joer... ya podia venir un Makefile porque compilar uno a uno... [mad] [mad]
¿Me lo dices o me lo cuentas? XD jajajajaja.
Un saludo.
no me jodas [mad] que tengo que compilar uno a uno.... vale se por donde empezar.. "psptoolchain" pero... no el siguiente [+risas]

# SDL/
# SDL_gfx/
# SDL_image/
# SDL_mixer/
# SDL_ttf/
# TinyGL/
# aalib/
# binutils-psp/
# bzip2/
# cal3D/
# cpplibs/
# cppunit/
# freetype/
# google-perftools/
# gxemul-psp/
# jpeg/
# libTremor/
# libbulletml/
# libctrl/
# libdoc/
# libmad/
# libmikmod/
# libogg/
# libpng/
# libpspvram/
# libpthreadlite/
# libvorbis/
# lua/
# microwindows/
# mikmodlib/
# nidattack/
# ode/
# openssl/
# prxtool/
# pspdis/
# pspgl/
# pspirkeyb/
# psplibraries/
# psplink/
# psplinkusb/
# psppacker/
# pspsdk/
# psptoolchain/
# python/
# sqlite/
# tests/
# zlib/
# zziplib/
Buff, yo no me baje todo eso, solo lo que pedia el SDK XD , aparte de que use los scripts que trae el SDK incluidos.
Un saludo.
pasame los scripts, please!

estoy haciendo la instalacion del SDK, le he cambiado los scripts por los que puso Darkangel, y la instalacion de psptoolchain perfecta, pero las librerias de psp... na de na.
root@linux:~/Desarrollo/PSP/SDK/pspSDK/psplibraries# ./libraries.sh
svn: No fue posible conectarse al equipo «svn.ps2dev.org»: Conexión rehusada
../scripts/001-zlib.sh: Failed.


Buscan PS2DEV ¬_¬


EDITO:

He modificado el script para que no apunte a PS2DEV:
#!/bin/sh
# zlib.sh by Dan Peori (danpeori@oopo.net)

## Exit on errors
set -e

## Download the latest source code.
if test ! -d "zlib"; then
svn checkout http://psp.jim.sh/svn/psp/trunk/zlib
else
svn update zlib
fi

## Enter the source directory.
cd zlib

## Compile and install.
make clean
make -j2
make install
make clean

Instalacion completada :D, hare unas pruebas, y actualizare el tutorial
Joer macho eres mas rapido que en el antiguo oeste jajajajaja XD ¿como vas con las pruebas?
Un saludo.
bien bien, he compilado el SDK he compilado algunos ejemplos y lo mas asi el HBL, sin problemas, asique me pondre a actualizar el tutorial, ademas quiero portar el sdk a mi repositorio Git, asique me toca modificar todos los scripts. jejje va para rato
Ok, habra que ver si tienes alguna novedad.
Por cierto me he fijado que has actualizado la PS3 a la 3.56 ¿COMO HAS COMETIDO ESE SACRILEGIO? jajajaja XD .
Un saludo.
Psmaniaco escribió:Ok, habra que ver si tienes alguna novedad.
Por cierto me he fijado que has actualizado la PS3 a la 3.56 ¿COMO HAS COMETIDO ESE SACRILEGIO? jajajaja XD .
Un saludo.

Correcion, estoy en la 3.60 [poraki], na tio, me llego un correo de Sony con amenazas de banear... directamente pase del tema, la formatee el HD por completo desde el PC, le restaure todo el sistema, instale la 3.55, y luego subí a la 3.56, y hace nada si quería usar el uso a distancia con la PSP (que me piilao una 3000) y tenia que actualizar la PS3, v3.60


EDITO:

Solicito ayuda para empezar a programar en PSP, necesito alguna documentacion sobre tipos de funciones, librerias, definiciones... alguien que tenga este tipo de informacion y lo que se me pueda pasar, si puede que se ponga en contacto conmigo.

Saludos y Gracias [bye]
Buenas, me interesa mucho el asunto este por que en la uni estamos liados con java,c# y c ...y me gustaria trastear algunas cosillas con mi psp.
¿podrias especificar que es exactamente lo que está mal del tutorial?¿Todo lo que haga referencia a ps2dev ? es que me he leido las 3 paginas pero no me queda muy claro si con la info que habeis puesto en las paginas posteriores al tutorial podria instalar el SDK...
supongo que no habria ningún problema para instalarlo en ubuntu 10.10 no?Estoy buscando otro tutorial como este aunque sea en inglés y no encuentro nada.

Un saludo y gracias!

EDIT: Por cierto, mi psp la tengo en 6.35custom 17, ¿hay algun problema a la hora de programar para 6.xx?
EDIT2: Al final he conseguido apañarme yo solo...en efecto ps2dev me daba problemas...ponia conexión rehusada. he conseguido lo que me faltaba aquí (espero que no se considere spam esto) http://sourceforge.net/projects/minpspw/files/SDK%20%2B%20devpak/pspsdk%200.11.1/
No, no hay problema en instalarlo en Ubuntu 10.10, de echo yo lo tengo en 10.10 64Bits, y va perfecto.

Haber si me pongo hoy, que he estado modificando cosas, y actualizo el tuto.

saludos
acabo de hacer mi primer chorradilla en psp...es una tonteria de menú hecha en C pero hace ilusión ver como rulan las cosas en psp. Así si que se motiva uno para estudiar programación.jajajaja. Un saludo y gracias por el tutorial!!
AzagraMac escribió:
Psmaniaco escribió:Ok, habra que ver si tienes alguna novedad.
Por cierto me he fijado que has actualizado la PS3 a la 3.56 ¿COMO HAS COMETIDO ESE SACRILEGIO? jajajaja XD .
Un saludo.

Correcion, estoy en la 3.60 [poraki], na tio, me llego un correo de Sony con amenazas de banear... directamente pase del tema, la formatee el HD por completo desde el PC, le restaure todo el sistema, instale la 3.55, y luego subí a la 3.56, y hace nada si quería usar el uso a distancia con la PSP (que me piilao una 3000) y tenia que actualizar la PS3, v3.60


EDITO:

Solicito ayuda para empezar a programar en PSP, necesito alguna documentacion sobre tipos de funciones, librerias, definiciones... alguien que tenga este tipo de informacion y lo que se me pueda pasar, si puede que se ponga en contacto conmigo.

Saludos y Gracias [bye]

A mi me banearon una de las mias y mira la verdad es que me quedo con la Scene que para lo que da Sony (mejor dicho para lo que nos quita de la PS3) me quedo con bueno lo mejor, es decir la Scene [+risas] .
Un saludo.
Estoy subiendo un paquete listo para copiar y compilar, igual al que hice con el SDK de PS2, en cuanto este subido lo posteo, adjunto un archivo "README" que contiene las instrucciones, de momento este paquete esta compilado en 32Bits, pero proximamente lo compilare en 64Bits, ya tiene incluido los modulos para firmar directamente el ejecutable, totalmente valido en firmware 6.37

Saludos
EDITO

Ya esta publicado el paquete.
¿Que tal Azagramac? estoy reinstalando los SDK de PS2 y PSP en Linux porque tuve que formatear; reinstalado el de la PSP da este error:
main.c: At top level:
main.c:913: warning: ‘struct usb_dev_handle’ declared inside parameter list
main.c:987: warning: ‘struct usb_dev_handle’ declared inside parameter list
main.c:1081: warning: ‘struct usb_dev_handle’ declared inside parameter list
main.c:1148: warning: ‘struct usb_dev_handle’ declared inside parameter list
main.c:1199: warning: ‘struct usb_dev_handle’ declared inside parameter list
main.c:1230: warning: ‘struct usb_dev_handle’ declared inside parameter list
main.c:1295: warning: ‘struct usb_dev_handle’ declared inside parameter list
main.c:1342: warning: ‘struct usb_dev_handle’ declared inside parameter list
main.c:1397: warning: ‘struct usb_dev_handle’ declared inside parameter list
main.c:1452: warning: ‘struct usb_dev_handle’ declared inside parameter list
main.c:1507: warning: ‘struct usb_dev_handle’ declared inside parameter list
main.c:1659: warning: ‘struct usb_dev_handle’ declared inside parameter list
main.c:1707: warning: ‘struct usb_dev_handle’ declared inside parameter list
main.c:1790: warning: ‘struct usb_dev_handle’ declared inside parameter list
main.c:1841: warning: ‘struct usb_dev_handle’ declared inside parameter list
main.c:1953: warning: ‘struct usb_dev_handle’ declared inside parameter list
main.c:2019: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
main.c: In function ‘do_hostfs’:
main.c:2091: error: ‘g_hDev’ undeclared (first use in this function)
main.c:2091: error: (Each undeclared identifier is reported only once
main.c:2091: error: for each function it appears in.)
main.c: In function ‘do_bulk’:
main.c:2228: error: ‘g_hDev’ undeclared (first use in this function)
main.c: In function ‘start_hostfs’:
main.c:2255: error: ‘g_hDev’ undeclared (first use in this function)
main.c:2255: warning: implicit declaration of function ‘wait_for_device’
main.c:2296: warning: dereferencing type-punned pointer will break strict-aliasing rules
main.c:2306: warning: dereferencing type-punned pointer will break strict-aliasing rules
main.c:2316: warning: dereferencing type-punned pointer will break strict-aliasing rules
main.c: In function ‘exit_app’:
main.c:2465: error: ‘g_hDev’ undeclared (first use in this function)
main.c: In function ‘async_thread’:
main.c:3088: error: ‘g_hDev’ undeclared (first use in this function)
main.c: In function ‘main’:
main.c:3124: warning: implicit declaration of function ‘usb_init’
make[1]: *** [main.o] Error 1
make[1]: se sale del directorio «/usr/local/psptoolchain/build/psplinkusb/usbhostfs_pc»
make: *** [all] Error 2
../scripts/009-psplinkusb.sh: Failed.
ERROR: Could not run the toolchain script.
root@israel-Satellite-P25:/usr/local/psptoolchain#

Esto en el Kubuntu 10.10 y en x86.
Un saludo.
Actualizado.

Añadido nuevas URLs de repositorios, ya que las de PS2DEV.. pasaron a mejor vida.
Poco a poco terminare de completar y lo dejare todo en mi repositorio git.
Tambien nuevas librerias (version completa)
saludos
Muchas gracias socio; voy a ver si asi consigo instalarlo de una vez XD .
Un saludo.
Psmaniaco escribió:Muchas gracias socio; voy a ver si asi consigo instalarlo de una vez XD .
Un saludo.

xD eres ya mi reto, que consigas instalar el SDK [+risas] [+risas]
chuso no sabia de esto, voy hecharle un vistaso para futuros proyectos [sonrisa] .
por cierto el link esa otra vez ofline
AzagraMac escribió:
Psmaniaco escribió:Muchas gracias socio; voy a ver si asi consigo instalarlo de una vez XD .
Un saludo.

xD eres ya mi reto, que consigas instalar el SDK [+risas] [+risas]

Diselo a Linux que se empeña en hacerme la puñeta XD .
Un saludo.
jam007 escribió:chuso no sabia de esto, voy hecharle un vistaso para futuros proyectos [sonrisa] .
por cierto el link esa otra vez ofline

Link esta OK.. problemas con el servidor [carcajad]

Psmaniaco escribió:Diselo a Linux que se empeña en hacerme la puñeta XD .
Un saludo.


Escusas.. jajaja que haras... jejee, na tio lo que sea, eso si, intenta instalarlo en x86 me da iguald e 32 o 64bits.. instalalo hay, y luego ya pruebas en PowerPC [poraki]
Pues en x86 me las esta jugando tambien, jajajajaja XD .
Un saludo.
lo tuyo es raro... has instalado todos los paquetes?

...
Si, he instalado todas las librerias necesarias como pone en el tuto y falla por el error que te dije la otra vez; el SDK de PS2 va sin problemas.
Un saludo.
has probado de nuevo, ahora que he hecho limpieza en el tuto?
No, probare mañana a ver; ahora estoy intentando instalar Linux en la PS3 desde el firmware 3.55 Kmeaw a ver que tal tira sin las restricciones del OtherOS de Sony XD .
Un saludo.
cuando lo instales avisa, que asi me enseñas algunas cosas, haber que tal tira el hardware con Linux sin el Hypervisor de por medio
esto para que sirve, para poner linux en PSP lo dudo, para hacer cosas de PSP en linux?
Din-A4 escribió:esto para que sirve, para poner linux en PSP lo dudo, para hacer cosas de PSP en linux?

No sabes los que es un SDK, no?

No es para instalar Linux en PSP, que de eso ya hay.

Es para instalar el entorno de desarrollo en un equipo con Linux, y poder desarrollar, de todas formas, de poco o nada te vale a nivel usuario.

saludos [ginyo]
55 respuestas
1, 2