Crear entorno de desarrollo de dlls para bennu

Started by DCelso, May 02, 2008, 10:38:08 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

DCelso

Hola aqui os dejo los pasos que he seguido para crearme un entorno cómodo y amigable para desarrollo de dlls de bennu. En realidad no es un tutorial, se necesitan bastante conocimentos para poder seguir los pasos.
Se admiten sujerencias :D.

Herramientas necesarias:
Java: jre6.0
mingw32: setup install (gcc,g++,make,gdb,binutils,w32api)
SDL: SDL-devel-1.2.13-mingw32.tar.gz (Mingw32)
SDL_mixer: SDL_mixer-devel-1.2.8-VC8.zip
bennu dll kit
fbtwo 0.56
bennugd: bennugd wip
eclipsecdt: eclipse-cpp-europa-winter-win32.zip

Consejos:
Una buena estructura de directorios es la siguiente:
c:\devBennu\bin           - binarios de bennu
c:\devBennu\fbtwo         - IDE flamebird para programar Bennu
c:\devBennu\workspace     - para guardar los proyectos flamebird y *.prgs
c:\eclipseCDT             - IDE Eclipse para programar plugins en C/CPP
c:\eclipseCDT\workspace   - para guardar los proyectos eclipse C/CPP
c:\mingw\bin              - para compilador de c
c:\mingw\include\sdl      - para copiar includes de SDL y SDL_mixer
c:\mingw\include\bennu    - para copiar includes del bennu dllkit
c:\mingw\lib              - para copiar dll y lib de SDL, SDL_mixer


Añadir al path c:\devBennu\bin, c:\mingw\bin y c:\mingw\lib

Si todo va bien, se podrá crear un nuevo proyecto c para plugins desde eclipse de la siguiente forma:
dar  a file - new - C proyect - Shared library - (Poner nombre proyecto) -Next.
En "advanced settings - GCC Compiler - Directorioes" añadir "/mingw/include/sdl" y  "/mingw/include/bennu"
En "advanced settings - MinGW C Linker - Libraries" añadir  :
                            "bgdruntime" para bennugd wip1
                            "bgdrtm" para bennugd wip2 o superior
En "advanced settings - MinGW C Linker - Library search path" añadir "/devbennu/bin"

Dar a OK y a Finish.
Ahora podremos crear o copiar cualquier *.c de ejemplo y obtener el *.dll necesario para bennugd.
Monstruos Diabólicos

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

SplinterGU

En el bennudll kit, se usa una dll llamada bgdiruntime... esa dll fue reemplazada por bgdrtm.dll, hay que usar esta ultima... y tampoco hay que usar la bgdi.dll...
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

FreeYourMind

Me podiais explicar de una vez que es esta dll:

bgdrtm.dll

y porque ahora se llama libbgdrtm.dll o si es otra substituta ?

y el historial de la misma desde que Bennu existe, ya que si bien recuerdo hace meses cuando probe alguna version de Bennu3D tambien saltaba el mismo error!

Estoy intentando un ejemplo del bennupack y es el unico que me salta el error de que falta la libreria bgdrtm.dll al compilar, el ejemplo es el ColonFLD10.prg, me parece muy raro que sólo se queje con ese, dentro lo unico que hace que podria causar su origen es el import de la ttf.dll (me imagino que el ejemplo sea antiguo y esa dll sea compilada para una version antigua de Bennu).

Me he fijado tambien que el cinqui viene tambien en el Bennupack con una conversion capada sin molestarse en adaptar el sonido :)

SplinterGU

Download Lastest BennuGD Release: http://www.bennugd.org/node/2

DCelso

tooma, eso es una respuesta escueta y lo demás estontería :D.
libbgdrtm : libreria runtime BennuGD. Lo que quiere decir que contiene el engine que usa bgdi para ejecutar nuestros dcbs entre otras cosas.
A ver, en las primeras versiones se llamaba bgdrtm a secas y ahora es libbgdrtm, por gusto y homogenización de splinterGU.

Si ttf.dll depende de esta primera es porque se compiló con una versión antigua de las librerías de bennugd. Hace falta recompilarla.
Pero a mi me da que eso ya lo hizo hace tiempo Sandman a lo mejor bennupack no tiene la versión de sandman, porque esta última se llama mod_ttf.dll

http://wiki.bennugd.org/index.php?title=DLL:TTF.DLL
Monstruos Diabólicos

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

DCelso

confirmado, hay que decirle a l1k3rn3l que la actualize, tiene una versión portada del ttf.dll de fenix.
Le pasa lo mismo que a las libs fire, expand y vse, en el bennu pack vienen versiones portadas directamente de las libs de fenix, supongo que portadas por él mismo, a ver si nos lo confirma.
Monstruos Diabólicos

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

SplinterGU

Quote from: DCelso on March 23, 2010, 11:45:56 PM
tooma, eso es una respuesta escueta y lo demás estontería :D.
libbgdrtm : libreria runtime BennuGD. Lo que quiere decir que contiene el engine que usa bgdi para ejecutar nuestros dcbs entre otras cosas.
A ver, en las primeras versiones se llamaba bgdrtm a secas y ahora es libbgdrtm, por gusto y homogenización de splinterGU.

Si ttf.dll depende de esta primera es porque se compiló con una versión antigua de las librerías de bennugd. Hace falta recompilarla.
Pero a mi me da que eso ya lo hizo hace tiempo Sandman a lo mejor bennupack no tiene la versión de sandman, porque esta última se llama mod_ttf.dll

http://wiki.bennugd.org/index.php?title=DLL:TTF.DLL


bueno, realmente esa dll es bennu, el bgdi es el programa embebido que la llama... pero el bgdi no es bennu, solo es su launcher... bennu es la dll como dije en mi ESCUETA RESPUESTA.

y lo de lib no es por gusto mio, creo que ya lo dije varias veces (no voy a cometer el error de decir que me da la impresion que no me leen cuando escribo... como hacen algunos... :D), si no lo dije, lo dire ahora... no fue mi gusto, fue la imposicion de las nuevas libtools.

sorry!
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

DCelso

 :o. En este caso hubieras llevado razón. :'(
Monstruos Diabólicos

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

Windgate

Karma up DCelso, sabiendo dónde demonios hay que poner cada cosa seguro que todo es más fácil, es el problema que tengo yo, que me empieza a pedir dlls la cosa por todas partes, y no sé qué hacer... Por no decir que algunas dll las tengo que andar buscando por ahí y quieras o no a veces da mal rollo no saber si es de confianza el sitio del que la bajas, me refiero a zlib y algunas otras.

Gracias, a ver si le doy uso :D
Iván García Subero. Programador, profesor de informática, monitor de actividades culturales y presidente de TRINIT Asociación de Informáticos de Zaragoza. http://trinit.es

FreeYourMind

Karma Up ?! Joer, ya puedes invitar a algo DCElso  ;D