mod_mappy

Started by DCelso, February 15, 2010, 03:17:16 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

FreeYourMind

Windgate, nose, peo las 3D te estan afectando :) Nos pides siempre cosas o haces siempre observaciones que se comentan varios posts arriba  ;D
El ejemplo viene con la dll compilada, tanto la de Windows en la primera página, como la de Linux algunos posts atras...

DCelso


Free, :'(, ya te dije que era la forma de como hacer los includes de bennuGD, antes hacía #include "bgdl.h" y ahora hace #include < bgdl.h > y así para todos los includes de bennu, para usar cadenas y otras funciones.
La diferencia es poca pero apreciable, con "" le dices al compilador que es una cabecera hecha por tí y con < > le dices al compilador que es una cabecera externa a tu proyecto.
Lo que no entiendo es qué es lo que te pasa, porque compilarte te compila para canoo ¿No? ¿el problema es luego al usarla con bgdc de canoo?
Intenta crear el .dcb de ejemplo en linux y luego intentar ejecutarlo en canoo insertando el mod_mappy.so para canoo que compilaste en la canoo.

Wind, efectivamente, en los dos códigos, tanto el de windows, como el de linux, tienen un directorio llamado prg donde va un prg de ejemplo de como usar mod_mappy.
Mappy es una aplicación (en versiones windows y linux) para generar archivos de mapas en un formato propietario. mod_mappy sirve para poder abrir y mostrar en pantalla los mapas hechos con Mappy y así poder usar estos mapas en tus juegos bennu.
Monstruos Diabólicos

"A PAck of classic GAMEs For BennuGD" en desarrollo
http://code.google.com/p/apagame4be/

FreeYourMind

No se porque me dices eso de los includes, eso fue de las pocas cosas que no se me han olvidado :)
Si, la tengo compilada, pero nose para que quieres que pruebe la de Linux, eso no va ayudar a que funcione la de Caanoo.

DCelso

no te digo que pruebes la de linux, sino que compiles el .dcb en linux (por tanto para el bgdc de linux necesitarás la de linux) y luego lo ejecutes en canoo (por tanto para el bgdi de canoo necesitarás la de canoo).
Monstruos Diabólicos

"A PAck of classic GAMEs For BennuGD" en desarrollo
http://code.google.com/p/apagame4be/

FreeYourMind

Ha vale, aunque lo probé con el compilado en windows.

DCelso

umn,, pues eso mismo me vale, y que resultados te dio?
Monstruos Diabólicos

"A PAck of classic GAMEs For BennuGD" en desarrollo
http://code.google.com/p/apagame4be/

FreeYourMind

Cual te imaginas ? Pues lo mismo, sino da error al compilar porque lo haces en un SO en el cual tiene la dll válida, pues te da error al ejecutarlo despúes porque no encuentra las funciones del modulo...

DCelso

Y tienes el mod_mappy.so de canoo con todos los .so del runtime de bennu, no?
pues entonces debe de ser una dependencia con alguna librería del sistema de canoo, prueba a ponerle -lz -lc o algo así.
Sino, también, puedes probar a quitarle el -shared, a ver si te da algún undefinided refference la compilación.
Monstruos Diabólicos

"A PAck of classic GAMEs For BennuGD" en desarrollo
http://code.google.com/p/apagame4be/

FreeYourMind

Es lo que pienso, por eso te preguntaba por las dependencias. Tambien esta lo raro del tamaño que ocupa la mitad, y los modulos suelen tener tamaños parecidos entre varios SO.

Donde son esos cambios que comentas ? Parametros del dcb ?!

DCelso

no, de la compilación para canoo, te acuerdas que te señalé en negrita un cambio en tu makefile? pues ahí mismo.
Monstruos Diabólicos

"A PAck of classic GAMEs For BennuGD" en desarrollo
http://code.google.com/p/apagame4be/

DCelso

#40
De este documento, extraigo que para compilar en caanoo necesitas cambiar lo siguiente en tu makefile:

BASE_DEV=/home/geca/Geca/mod_mappy/caanoo_toolchain/gcc-4.2.4-glibc-2.7-eabi
PREFIX=$(BASE_DEV)/bin/arm-gph-linux-gnueabi-
BUILD_EXT=.so
PLATFORM=__ARM__
BENNU_CORE=/home/geca/Geca/mod_mappy
BENNU_BASE=/home/geca/Geca/mod_mappy/bennugd
BENNU_RUNTIME=/home/geca/Geca/bgdrtm_caanoo
BUILD_APP = mod_mappy$(BUILD_EXT)

EXTRA_LIBS= -L$(BENNU_RUNTIME) -lgrbase -lbgdrtm

CC    := $(PREFIX)gcc
LD    := $(PREFIX)gcc
AS    := $(PREFIX)as
AR    := $(PREFIX)ar

OBJECTS =   mod_mappy.o

CFLAGS = -DTARGET_CAANOO  -DARM -D_ARM_ASSEM_ -I. -I$(BENNU_BASE)/core/include -I$(BENNU_BASE)/bgdrtm/include -I$(BENNU_BASE)/modules/libgrbase  -I$(BASE_DEV)/DGE/include -I$(BASE_DEV)/DGE/include/SDL -I$(BASE_DEV)/include -Wall -O3 -fexceptions -fomit-frame-pointer -fPIC

LDFLAGS = -shared -module -avoid-version -L$(BASE_DEV)/DGE/lib/target -L$(BASE_DEV)/lib/target  -lSDL -lSDL_image -lSDL_mixer -lSDL_ttf -lDGE -lglport -lopengles_lite -lpng -lz -lts -lsmpeg –lfreetype -s $(EXTRA_LIBS)

all: $(BUILD_APP)

$(BUILD_APP): $(OBJECTS) Makefile
$(CC) -o $@ $(OBJECTS) $(LDFLAGS)

%.o:%.cpp Makefile
$(CC) -c $(CFLAGS) $< -o $@

clean:
rm -f $(OBJECTS) $(BUILD_APP)

release: clean all


En primer lugar, puede que tu error provenga de que no estabas enganchando con las libs runtime de bennu para caanoo.
Y en segundo lugar, del documento ese he extraído todas las librerías con las que enganchas con el sistema caanoo (fijo que todas no son necesarias pero poniendo todas aseguramos que vaya :D)
Prueba y me cuentas.
Monstruos Diabólicos

"A PAck of classic GAMEs For BennuGD" en desarrollo
http://code.google.com/p/apagame4be/

FreeYourMind

Funcione o no soy tu fan :). Karma.
Ya he compilado 2 modulos antes para Caanoo y funcionaban de la otra forma, ya te comento luego que ahora es party time :)

DCelso

Pues entonces ahora lo vas a flipar, me he bajado las SDK de caanoo y he compilado el mod_mappy cambiando el makefile del ejemplo adjunto en las sdl, el resultado es el siguiente, me gustaría que alguien intentase probar el ejemplo .prg que adjunto en la caanoo añadiendo el .so que también adjunto de mod_mappy.
Monstruos Diabólicos

"A PAck of classic GAMEs For BennuGD" en desarrollo
http://code.google.com/p/apagame4be/

FreeYourMind

Si ya me lo esperaba justo al entrar y ver que habia novedades en este post.
La proxima no te digo nada, roba curro xDDDD
Lo voy a probar ahorita en la Caanoo.

FreeYourMind

#44
Funciona :)
Yo ya tenia el prg y todo adaptado para la Caanoo listo a distribuir (mapeado de los botones, resolución, instalación).
Así que si no te importa lo voy a publicar yo, como ya he hecho con los 2 anteriores modulos que porte a Caanoo, sólo que con tu modulo XDDDD

La proxima no te digo nada xDDD
En serio, muchas gracias, así da gusto :)

Mañana lo pruebo a compilar.



http://dl.openhandhelds.org/cgi-bin/caanoo.cgi?0,0,0,0,19,601