Anuncios Google

Tema V: Compilando mi Primer Programa

Tutoriales Avanzados Homebrewes

Bien, llegado a este punto del tutorial deberiamos tener el Entorno del PC preparado para compilar cualquier programa (si no lo tienes revisa los tutoriales anteriores, usando el menu derecho). No vamos hacer mas incapie en definiciones y mas teoria, puesto que lo mejor para aprender es ponerse a practicar. De este modo lo entenderemos mejor todo. Por eso vamos a empezar a crear nuestro 1º Programa para PSP desde cero.

* Os recuerdo que las Definiciones y Librerias espuestas anteriormente, son para crear aplicaciones en MODO USER (Validas para todos los firmwares) y en MODO KERNEL (Validas para firmwares con kernel 1.50 solamente)

Vamos a comenzar a crear nuestra primera aplicacion de PSP. La aplicacion que vamos a crear es muy simple,se trata de una aplicacion cuya funcion sera ocultar y mostrar una carpetas. Esta aplicacion la crearemos en modo user para que funcione en todos los custom firmwares.

Empezamos:

Lo primero que debemos hacer es crear una carpeta,la la podeis llamar como querais,ejemplo: "Mi Programa"

Ahora descargais la libreria Astaroth y las libreria graficas y power (Encontrareis las descargas en Archivos Adjuntos).Una vez tengamos las librerias las incluimos dentro de nuestra carpeta anteriormente creada. (ver imagen)

Preparando la Carpeta

 

Una vez tengamos la carpeta preparada con las librerias,al igual que se muestra en la imagen,creamos un nuevo txt y le llamamos MAIN.C,cambiando la extension del archivo .TXT por .C. y le metemos dentro nuestra carpeta con las librerias.

Ahora abrimos el archivo MAIN.C con el wordpad,ultraedit,etc,etc (sirve cualquier editor de texto) y escribimos en el lo siguiente:

// Ejemplo creado por Marce82 //
 
#include "Astaroth.h" // Incluimos la libreria Astaroth //
 
PSP_MODULE_INFO("Mi Programa", 0, 1, 0); // Definimos el nombre del modulo //
 
PSP_MAIN_THREAD_ATTR(PSP_THREAD_ATTR_USER); // Definimos el MODO de la aplicacion en este caso es MODO USER //
 
void menu() // Definimos nuestro Menu (Esto es un ejemplo de como crear una funcion propia) //
 
{
 
clearscreen(); // Limpia la Pantalla //
 
printf(" Pulse X para Ocultar la Carpeta PHOTO\n"); // Imprime texto en Pantalla //
 
printf(" Pulse O para Mostrar la Carpeta PHOTO\n\n"); // Imprime texto en Pantalla //
 
printf(" Pulse Triangulo para Salir de la Aplicacion"); // Imprime texto en Pantalla //
 
CtrlData pad; // Define el control del pad //
 
while (1) // Comenzamos la definicion de botones //
 
{
 
CtrlBuffer(&pad, 1); // Lectura del Buffer de los botones definidos anteriormente //
 
if (pad.Buttons & cross) // Definimos al pulsar el Boton Equis //
 
{
 
clearscreen(); // Limpia la Pantalla //
 
printf("Ocultando Carpeta... Espere..."); // Imprime texto en Pantalla //
 
rename("ms0:/PSP/PHOTO","ms0:/PSP/TOPSECRET"); // Renombra el Archivo o Carpeta //
 
delay(1*1000*1000); // Retardo de Tiempo (1 Segundo) //
 
menu(); // Regresa al menu //
 
}
 
if (pad.Buttons & circle) // Definimos al pulsar el Boton Circulo //
 
{
 
clearscreen(); // Limpia la Pantalla //
 
printf("Mostrando Carpeta... Espere..."); // Imprime texto en Pantalla //
 
rename("ms0:/PSP/TOPSECRET","ms0:/PSP/PHOTO" ); // Renombra el Archivo o Carpeta //
 
delay(1*1000*1000); // Retardo de Tiempo (1 Segundo) //
 
menu(); // Regresa al menu //
 
}
 
if (pad.Buttons & triangle) // Definimos al pulsar el Boton Triagulo //
 
{
 
clearscreen(); // Limpia la Pantalla //
 
printf("Saliendo... Espere..."); // Imprime texto en Pantalla //
 
delay(2*1000*1000); // Retardo de Tiempo (2 Segundo) //
 
exit(); // Sale de la Aplicacion //
 
}
 
} // Siempre que vamos a definir un comando,se abre el "{" recordad que luego ahy que cerrarlos todos "}"
 
}
 
int main() // Definimos aqui el Programa //
 
{
 
CtrlData currentPad, lastPad; // Define el control del pad //
 
CtrlBuffer(&lastPad, 1); // Lectura del Buffer de los botones definidos anteriormente //
 
screeninit(); // Inicia Pantalla para poder Escribir en ella //
 
menu(); // Llama a nuestra Definicion (En este caso a nuestro menu) //
 
}

Ahora salimos del editor de texto guardando los cambios en MAIN.C

*Este es el programa,al lado de cada funcion podeis observar un pequeño cometario explicativo,echarle un vistazo.

Ahora vamos a crear el Makefile necesario para compilar nuestro programa,para ello creamos un nuevo archivo txt y le llamamos "Makefile" (Sin extension),lo abrimos con cualquier editor de texto y escribimos lo siguiente:

TARGET = MiPrograma
OBJS = main.o
 
INCDIR =
CFLAGS = -O2 -G0 -Wall
CXXFLAGS = $(CFLAGS) -fno-exceptions -fno-rtti
ASFLAGS = $(CFLAGS)
 
LIBDIR =
LDFLAGS =
LIBS =
 
EXTRA_TARGETS = EBOOT.PBP
PSP_EBOOT_TITLE = Mi Programa de PSP
 
PSPSDK=$(shell psp-config --pspsdk-path)
include $(PSPSDK)/lib/build.mak 

Salimos del editor de texto y guardamos,ya tenemos nuestra primera aplicacion lista para ser Compilada.(Ver imagen)

 

Ya esta todo listo,ahora cojemos el Compilador.bat el cual ya deberiamos conocer y lo metemos dentro de nuestra carpeta.(Ver imagen)

Pinchar para ampliar.

Ahora solo debemos clickear 2 veces encima del Compilador.bat,se mostrara una pantalla de Ms-Dos mostrando el proceso de Compilacion y Listo!!! (Ver imagen)

Compilacion Finalizada con Exito

 

Como observareis,se ha creado un Eboot.pbp en nuestra carpeta,ese es el resultado que esperabamos,ahora a testearlo.

* Es importante que cada vez que abrais una nueva funcion,nose os olvide cerrarla,hablo de las sangrias.Ejemplo:

    Void menu();
     
    { <- Abrimos y comenzamos a definir
     
    Definimos funcion
     
    } <- Cerramos 

** La Aplicacion que hemos creado esta en Modo User,esto significa que no requiere kernel 1.50,por lo cual debera ir en PSP/GAME y no GAME150

*** Realmente para crear esta aplicacion,no hace falta las librerias,con el main.c y el makefile sobraria,pero las añado para una futura actualizacion de la aplicacion,de este modo solo ahi que modificar el main.c en un futuro

4.357145
Tu voto: Ninguno Votos totales: 4.4 (14 votos)

Anuncios Google

Comentarios

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de pato.pt

a mi me salio que make no es

a mi me salio que make no es un comando interno o externo

Imagen de JoRiV96

no se q pasa

no se q pasa!!! miren lo que salio


                              Creando Archivo... Espere...

psp-gcc -I. -IC:/PSPDev/psp/sdk/include -02 -G0 -Wall -D_PSP_FW_VERSION=150  -L.
 -LC:/PSPDev/psp/sdk/lib   main.c  -lpspdebug -lpspdisplay -lpspge -lpspctrl -lp
spsdk -lc -lpspnet -lpspnet_inet -lpspnet_apctl -lpspnet_resolver -lpsputility -
lpspuser -lpspkernel -o Anti-Curiosos.elf
psp-gcc.exe: unrecognized option '-02'
In file included from main.c:1:
Astaroth.h: In function 'writetoflashone':
Astaroth.h:96: warning: implicit declaration of function 'open'
Astaroth.h: At top level:
Astaroth.h:237: warning: 'pspDebugScreenPrintf' is an unrecognized format functi
on type
Astaroth.h: In function 'loadusb':
Astaroth.h:301: warning: implicit declaration of function 'pspSdkLoadStartModule
'
Astaroth.h: At top level:
Astaroth.h:364: warning: 'pspDebugScreenPrintf' is an unrecognized format functi
on type
Astaroth.h:489: warning: 'struct SceKernelLoadExecVSHParam' declared inside para
meter list
Astaroth.h:489: warning: its scope is only this definition or declaration, which
 is probably not what you want
Astaroth.h:500: warning: 'struct SceKernelLoadExecVSHParam' declared inside para
meter list
Astaroth.h:511: warning: 'struct SceKernelLoadExecVSHParam' declared inside para
meter list
Astaroth.h:522: warning: 'struct SceKernelLoadExecVSHParam' declared inside para
meter list
Astaroth.h:533: warning: 'struct SceKernelLoadExecVSHParam' declared inside para
meter list
Astaroth.h:544: warning: 'struct SceKernelLoadExecVSHParam' declared inside para
meter list
Astaroth.h:555: warning: 'struct SceKernelLoadExecVSHParam' declared inside para
meter list
main.c:5: error: expected ',' or ';' before 'unsigned'
main.c: In function 'menu':
main.c:37: error: missing terminating " character
main.c:41: error: expected ')' before 'menu'
main.c:43: warning: passing argument 2 of 'sceIoRename' makes pointer from integ
er without a cast
main.c:43: error: expected ';' before '}' token
main.c:85: error: missing terminating " character
main.c:87: error: expected ')' before ';' token
main.c:91: warning: passing argument 2 of 'sceIoRename' makes pointer from integ
er without a cast
main.c:91: error: expected ';' before '}' token
main.c:101: error: expected ';' before 'sceKernelDelayThread'
main.c: In function 'main':
main.c:115: warning: unused variable 'currentPAD'
main.c:123: warning: control reaches end of non-void function
make: *** [Anti-Curiosos.elf] Error 1

                                      Terminado

Imagen de LaloerkZ100

compilador

no quiere compilar mis archivos dice que Make no es un comando externo o interno ayudaaa

pleaseee!!!!!!!!!!!!!

Imagen de Dark_Blazer

creo que tienes un fallo

Hola

mira he hecho el tutorial y al principio no me iba pero luego me he dado cuenta de que si quieres guardar el MAIN con extension .C entonces tienes que poner en el Makefile:

OBJS = main.c

Tu pones esto:

OBJS = main.o

Desde aqui ya me funcionó

Mis felicitaciones porque estoy aprendiendo mucho con estos tutoriales

Gracias


Samsung Galaxy Nexus

Imagen de pspgorrister

pos no

hay que poner .o, de hecho "OBJS" se usa cuando haces un make clean que elimina los .o, si hicieras un make clean borrarías tu fuentes así que cuidado, debes quitarlo.

PD: No se a que es debido tu error, pero en OBJS  *NO* hay que poner las extensiones .c ó .cpp

Un saludo.


LuaDiE: Crea en Lua sin teclear código. Compatible HM7, HMv2, LuaPlayer, LuaDEV y PGE.

Imagen de Dark_Blazer

entonces

entonces me sale este error:

make: *** No rule to make target 'main.o', nedded by 'MiPrograma.elf'. Stop.

Si pongo main.c no sale ningun error Indeciso


Samsung Galaxy Nexus

a mi lo que me sale es : no

a mi lo que me sale es : no rule to make target main.0 nedded by "MiPrograma".elf

 

ayudadme por favor...

por favor...

de verdad...

Imagen de pane

error con el main.c

Cuando compilo, me tira este error. Lo he provado con vuestro main.c pero tampoco me funciona

Free Image Hosting at www.ImageShack.us

No se que es lo que hago mal, pero si alguien lo sabe que me ayude  por favor

Saludos


Imagen de pane

Solucionado

Nada ya esta solucionado, simplemente era que no encontrava el astaroth.h porque resulta que el que tenia en la carpeta no tenia extensión .h

Son simples errores que debemos controlar ;)


Imagen de ktix007

eRROR!

No lo entiendo! Hasta usando vuestro main.c y Makefile no me funciona:

c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/sys/types.h:339:2: er
ror: #endif without #if
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/sys/types.h:341:2: er
ror: #endif without #if
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/sys/types.h:345:2: er
ror: #endif without #if
In file included from c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include
/pngconf.h:243,
                 from c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include
/png.h:363,
                 from Astaroth.h:11,
                 from main.c:3:
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:170: error: e
xpected '=', ',', ';', 'asm' or '__attribute__' before '*' token
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:172: error: e
xpected ')' before '*' token
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:173: error: e
xpected ')' before '*' token
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:174: error: e
xpected '=', ',', ';', 'asm' or '__attribute__' before '*' token
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:175: error: e
xpected ')' before '*' token
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:176: error: e
xpected ')' before '*' token
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:177: error: e
xpected ')' before '*' token
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:178: error: e
xpected ')' before '*' token
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:182: error: e
xpected ')' before '*' token
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:185: error: e
xpected ')' before '*' token
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:186: error: e
xpected declaration specifiers or '...' before 'FILE'
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:187: error: e
xpected declaration specifiers or '...' before 'FILE'
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:188: error: e
xpected declaration specifiers or '...' before 'FILE'
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:189: error: e
xpected ')' before '*' token
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:192: error: e
xpected declaration specifiers or '...' before 'FILE'
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:195: error: e
xpected declaration specifiers or '...' before 'FILE'
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:196: error: e
xpected declaration specifiers or '...' before 'FILE'
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:197: error: e
xpected declaration specifiers or '...' before 'FILE'
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:201: error: e
xpected ')' before '*' token
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:203: error: e
xpected ')' before '*' token
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:207: error: e
xpected ')' before '*' token
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:209: error: e
xpected ')' before '*' token
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:210: error: e
xpected ')' before '*' token
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:211: error: e
xpected ')' before '*' token
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:212: error: e
xpected ')' before '*' token
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:213: error: e
xpected ')' before '*' token
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:216: error: e
xpected '=', ',', ';', 'asm' or '__attribute__' before '*' token
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:226: error: e
xpected ')' before '*' token
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:227: error: e
xpected ')' before '*' token
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:234: error: e
xpected ')' before '*' token
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:245: error: e
xpected ')' before '*' token
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:246: error: e
xpected ')' before '*' token
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:247: error: e
xpected ')' before '*' token
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:262: error: e
xpected '=', ',', ';', 'asm' or '__attribute__' before '*' token
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:264: error: e
xpected ')' before '*' token
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:265: error: e
xpected ')' before '*' token
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:266: error: e
xpected ')' before '*' token
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:267: error: e
xpected '=', ',', ';', 'asm' or '__attribute__' before '*' token
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:268: error: e
xpected declaration specifiers or '...' before 'FILE'
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:269: error: e
xpected ')' before '*' token
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:270: error: e
xpected ')' before '*' token
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:271: error: e
xpected ')' before '*' token
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:273: error: e
xpected ')' before '*' token
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:274: error: e
xpected ')' before '*' token
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:275: error: e
xpected ')' before '*' token
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:276: error: e
xpected declaration specifiers or '...' before 'FILE'
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:288: error: e
xpected '=', ',', ';', 'asm' or '__attribute__' before '*' token
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:289: error: e
xpected '=', ',', ';', 'asm' or '__attribute__' before '*' token
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:290: error: e
xpected declaration specifiers or '...' before 'FILE'
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:291: error: e
xpected declaration specifiers or '...' before 'FILE'
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:292: error: e
xpected declaration specifiers or '...' before 'FILE'
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:293: error: e
xpected declaration specifiers or '...' before 'FILE'
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:294: error: e
xpected declaration specifiers or '...' before 'FILE'
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:316: error: e
xpected '=', ',', ';', 'asm' or '__attribute__' before '*' token
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:318: error: e
xpected declaration specifiers or '...' before 'FILE'
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:322: error: e
xpected declaration specifiers or '...' before 'FILE'
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:323: error: e
xpected declaration specifiers or '...' before 'FILE'
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:330: error: e
xpected declaration specifiers or '...' before 'FILE'
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:331: error: e
xpected declaration specifiers or '...' before 'FILE'
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:337: error: e
xpected declaration specifiers or '...' before 'FILE'
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:338: error: e
xpected declaration specifiers or '...' before 'FILE'
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:364: error: e
xpected ')' before '*' token
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:365: error: e
xpected declaration specifiers or '...' before 'FILE'
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/stdio.h:372: error: e
xpected '=', ',', ';', 'asm' or '__attribute__' before '*' token
In file included from c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include
/pngconf.h:286,
                 from c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include
/png.h:363,
                 from Astaroth.h:11,
                 from main.c:3:
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/sys/types.h:335: erro
r: expected '=', ',', ';', 'asm' or '__attribute__' before '<' token
In file included from c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include
/pngconf.h:286,
                 from c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include
/png.h:363,
                 from Astaroth.h:11,
                 from main.c:3:
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/sys/types.h:336:2: er
ror: #endif without #if
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/sys/types.h:337:2: er
ror: #endif without #if
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/sys/types.h:339:2: er
ror: #endif without #if
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/sys/types.h:341:2: er
ror: #endif without #if
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/sys/types.h:345:2: er
ror: #endif without #if
In file included from c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include
/pngconf.h:313,
                 from c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include
/png.h:363,
                 from Astaroth.h:11,
                 from main.c:3:
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/setjmp.h:14: error: e
xpected ')' before '__jmpb'
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/setjmp.h:15: error: e
xpected ')' before '__jmpb'
In file included from c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include
/time.h:29,
                 from c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include
/pngconf.h:1037,
                 from c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include
/png.h:363,
                 from Astaroth.h:11,
                 from main.c:3:
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/sys/types.h:335: erro
r: expected '=', ',', ';', 'asm' or '__attribute__' before '<' token
In file included from c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include
/time.h:29,
                 from c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include
/pngconf.h:1037,
                 from c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include
/png.h:363,
                 from Astaroth.h:11,
                 from main.c:3:
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/sys/types.h:336:2: er
ror: #endif without #if
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/sys/types.h:337:2: er
ror: #endif without #if
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/sys/types.h:339:2: er
ror: #endif without #if
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/sys/types.h:341:2: er
ror: #endif without #if
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/sys/types.h:345:2: er
ror: #endif without #if
In file included from c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include
/pngconf.h:1037,
                 from c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include
/png.h:363,
                 from Astaroth.h:11,
                 from main.c:3:
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/time.h:252: error: ex
pected identifier or '(' before 'int'
In file included from c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include
/pngconf.h:1037,
                 from c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include
/png.h:363,
                 from Astaroth.h:11,
                 from main.c:3:
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/time.h:255:2: error:
#endif without #if
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/time.h:261:2: error:
#endif without #if
In file included from c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include
/png.h:363,
                 from Astaroth.h:11,
                 from main.c:3:
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/pngconf.h:1144: error
: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token
In file included from Astaroth.h:11,
                 from main.c:3:
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/png.h:1076: error: ex
pected specifier-qualifier-list before 'jmp_buf'
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/png.h:1826: error: ex
pected declaration specifiers or '...' before 'png_FILE_p'
In file included from c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include
/sys/time.h:9,
                 from C:\PSPDev/psp/sdk/include/psputils.h:32,
                 from C:\PSPDev/psp/sdk/include/pspuser.h:26,
                 from C:\PSPDev/psp/sdk/include/pspkernel.h:18,
                 from Astaroth.h:21,
                 from main.c:3:
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/sys/types.h:335: erro
r: expected '=', ',', ';', 'asm' or '__attribute__' before '<' token
In file included from c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include
/sys/time.h:9,
                 from C:\PSPDev/psp/sdk/include/psputils.h:32,
                 from C:\PSPDev/psp/sdk/include/pspuser.h:26,
                 from C:\PSPDev/psp/sdk/include/pspkernel.h:18,
                 from Astaroth.h:21,
                 from main.c:3:
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/sys/types.h:336:2: er
ror: #endif without #if
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/sys/types.h:337:2: er
ror: #endif without #if
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/sys/types.h:339:2: er
ror: #endif without #if
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/sys/types.h:341:2: er
ror: #endif without #if
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/sys/types.h:345:2: er
ror: #endif without #if
In file included from C:\PSPDev/psp/sdk/include/psputils.h:32,
                 from C:\PSPDev/psp/sdk/include/pspuser.h:26,
                 from C:\PSPDev/psp/sdk/include/pspkernel.h:18,
                 from Astaroth.h:21,
                 from main.c:3:
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/sys/time.h:37: error:
 field 'it_interval' has incomplete type
c:\pspdev\bin\../lib/gcc/psp/4.1.0/../../../../psp/include/sys/time.h:38: error:
 field 'it_value' has incomplete type
In file included from main.c:3:
Astaroth.h: In function 'writetoflashone':
Astaroth.h:96: warning: implicit declaration of function 'open'
Astaroth.h: At top level:
Astaroth.h:237: warning: 'pspDebugScreenPrintf' is an unrecognized format functi
on type
Astaroth.h: In function 'loadusb':
Astaroth.h:301: warning: implicit declaration of function 'pspSdkLoadStartModule
'
Astaroth.h: At top level:
Astaroth.h:364: warning: 'pspDebugScreenPrintf' is an unrecognized format functi
on type
Astaroth.h:489: warning: 'struct SceKernelLoadExecVSHParam' declared inside para
meter list
Astaroth.h:500: warning: 'struct SceKernelLoadExecVSHParam' declared inside para
meter list
Astaroth.h:511: warning: 'struct SceKernelLoadExecVSHParam' declared inside para
meter list
Astaroth.h:522: warning: 'struct SceKernelLoadExecVSHParam' declared inside para
meter list
Astaroth.h:533: warning: 'struct SceKernelLoadExecVSHParam' declared inside para
meter list
Astaroth.h:544: warning: 'struct SceKernelLoadExecVSHParam' declared inside para
meter list
Astaroth.h:555: warning: 'struct SceKernelLoadExecVSHParam' declared inside para
meter list
main.c: In function 'main':
main.c:52: warning: unused variable 'currentPad'
main.c:57: warning: control reaches end of non-void function
make: *** [main.o] Error 1

                                      Terminado
 

Error

Imagen de tomy_molina

Problema !!culpa mia???Disculpen mi ignorancia..

Debe ser culpa mia pero hoy empece a mirar los tutos avanzados para crear mi homebrew y leyendo esto lo ice (tenia las libreiras y todo en el pc preparado)y me sale el error este:

psp-gcc -I. -IC:\pspdev/psp/sdk/include -O2 -G0 -wall -D_PSP_FW_VERSION=150   -c -o main.o main.c

psp-gcc.exe: _spawnv: No such file or directory

MAKE: *** [main.o] Error 1

Error

 

Imagen de Meganium

Duda

tengo ya todo preparado para compilar le doy dos veces clic en el compilador y me pone:

Creando archivo... espere...

"make" no se reconoce como un comando interno o externo,

programa o archivo por lotes ejecutabes.

Terminado.

Como hago para que me salga bien porque he seguido todos los pasos pero me pone eso y no consigo compilar.

Imagen de crisman999

Un error creo

Me dice lo siguiente:

Creando archivo... Espere...

make: *** h:/PSPDev/psp/sdk: is a directory. Stop

Terminado.

Creo que es un error


Photobucket

Imagen de crisman999

Ya se

pues lo tuve que descubir yo mismo, por que aqui no me quisieron ayudar

Imagen de CARLOS.1.2.3

Como

lo hiciste?

Yo tengo el mismo error y si me podrias ayudar.

Gracias

posible resultado

a mi tambien me daba ese error, lo resolvi asi.

 aqui en esta pagina te dan el codigo de Makefile, si copeas el codigo al archivo que creaste se pasa con unos espacios despues de =     o mejor dicho al final de cada renglon(solo algunos), yo solo quite esos espacios en blaco con backspace, guarde, compile y listo.

 


TARGET = MiPrograma (aqui hay un espacio al final)

OBJS = main.o

INCDIR = (aqui hay otro, solo dale backspace)
CFLAGS = -O2 -G0 -Wall (otro)
CXXFLAGS = $(CFLAGS) -fno-exceptions -fno-rtti (otro)
ASFLAGS = $(CFLAGS)

LIBDIR = (otro)
LDFLAGS = (otro)
LIBS =

EXTRA_TARGETS = EBOOT.PBP (otro)
PSP_EBOOT_TITLE = Mi Programa de PSP

PSPSDK=$(shell psp-config --pspsdk-path) (otro)

include $(PSPSDK)/lib/build.mak (otro)

 

bueno, a mi me resulo, nos vemos. 

Imagen de Miguelinh0

Creaste el entorno en

Propiedades de Sistema?

Tambien puede ser que hayas programado en Win Vista, porque en Vista no arranca el compilador, solo en XP.

Salu2 


Imagen de kas_psp

Vista y Compilador

Pues a mi, el compilador me tira en Vista ultimate x64. :D

Imagen de ktix007

Como lo ago para que

Como lo ago para que pulsando varios botones a la vez me oculte la carpeta es k he puesto circle+square+cross y lo que hace es k puedo usar todos tres para ocultar la carpeta pero yo quiero usarlos todos a la vez

utiliza en las

utiliza en las condicionales && o una condicional dentro de otra:

 

//...

if((pad.Buttons & PSP_CTRL_CIRCLE) && (pad.Buttons & PSP_CTRL_CROSS)) {

//...

 if(pad.Buttons & PSP_CTRL_CIRCLE){

 if(pad.Buttons & PSP_CTRL_CROSS){

//...

¿si lo que se quieres

¿si lo que se quieres obtener es uninstalador de archivos en la F0 que habra que poner en MAIN.C?

Imagen de ktix007

Me ha funcionado

pero me podeis decir como puedo cambiar el color del fondo o poner una imagen?

algo de error sobre el makefile

Lo primero que quiero hacer es dar las gracias a todos los que han colaborado en crear todos y cada uno de los Homebrew ¡Gracias a vosotros el mundo de la PSP se expande cada dia mas!.

Ahora quiero pediros ayuda con un asunto. Miren, e ido siguiendo cada uno de los pasos para crear tu programa. Ahora bien, cuando abro el compilador aparece la ventana de MS-DOS y me pone lo siguiente:

comando o nombre de archivo no valido

comando o nombre de archivo no valido

Creando Archivo.. Espere

psp-gcc -I. -IC:\pspdev/psp/sdk/include -O2 -G0 -wall -D_PSP_FW_VERSION=150   -c -o main.o main.c

psp-gcc.exe: _spawnv: No such file or directory

MAKE: *** [main.o] Error 1

Terminado.

y ahi se queda. Estaria muy agradecido si me contestasen.

Imagen de Churristian8

Me pone error

Hola a todos. Tengo un problema. A la hora de dar doble clic en el
compilador me pone en la ventana de MS-DOS un monton de warning y error
con el main.c que es el que adjuntais con el tutorial.

Espero que me ayudeis y gracias anticipadas

Salu2 

error

hola ami me da este error:

 

                              Creando Archivo... Espere...

psp-gcc -I. -IC:/PSPDev/psp/sdk/include -O2 -G0 -Wall -D_PSP_FW_VERSION=150   -c
 -o main.o main.c
In file included from main.c:3:
Astaroth.h: In function 'writetoflashone':
Astaroth.h:96: warning: implicit declaration of function 'open'
Astaroth.h: At top level:
Astaroth.h:237: warning: 'pspDebugScreenPrintf' is an unrecognized format functi
on type
Astaroth.h: In function 'loadusb':
Astaroth.h:301: warning: implicit declaration of function 'pspSdkLoadStartModule
'
Astaroth.h: At top level:
Astaroth.h:364: warning: 'pspDebugScreenPrintf' is an unrecognized format functi
on type
Astaroth.h:489: warning: 'struct SceKernelLoadExecVSHParam' declared inside para
meter list
Astaroth.h:489: warning: its scope is only this definition or declaration, which
 is probably not what you want
Astaroth.h:500: warning: 'struct SceKernelLoadExecVSHParam' declared inside para
meter list
Astaroth.h:511: warning: 'struct SceKernelLoadExecVSHParam' declared inside para
meter list
Astaroth.h:522: warning: 'struct SceKernelLoadExecVSHParam' declared inside para
meter list
Astaroth.h:533: warning: 'struct SceKernelLoadExecVSHParam' declared inside para
meter list
Astaroth.h:544: warning: 'struct SceKernelLoadExecVSHParam' declared inside para
meter list
Astaroth.h:555: warning: 'struct SceKernelLoadExecVSHParam' declared inside para
meter list
main.c: In function 'main':
main.c:52: warning: unused variable 'currentPad'
main.c:57: warning: control reaches end of non-void function
psp-gcc -I. -IC:/PSPDev/psp/sdk/include -O2 -G0 -Wall -D_PSP_FW_VERSION=150  -L.
 -LC:/PSPDev/psp/sdk/lib   main.o  -lpspdebug -lpspdisplay -lpspge -lpspctrl -lp
spsdk -lc -lpspnet -lpspnet_inet -lpspnet_apctl -lpspnet_resolver -lpsputility -
lpspuser -lpspkernel -o MiPrograma.elf
psp-fixup-imports MiPrograma.elf
mksfo 'Mi Programa de PSP' PARAM.SFO
psp-strip MiPrograma.elf -o MiPrograma_strip.elf
pack-pbp EBOOT.PBP PARAM.SFO NULL  \
                NULL NULL NULL  \
                NULL  MiPrograma_strip.elf NULL
rm -f MiPrograma_strip.elf

                                      Terminado

 

EDITO: e usado vuestros makefile y main

 

pero otra cosa: que tengo que hacer para testear el programa?

 

meter el eboot.pbp en PSP/GAME?

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.