Bennu Game Development

Foros en Español => Mesa de Ayuda => Topic started by: Danielo515 on September 16, 2008, 09:52:02 PM

Title: ¿que librerias debo incluir? ¿cual es la mejor forma de distribuir un proyecto?
Post by: Danielo515 on September 16, 2008, 09:52:02 PM
Pues eso ¿cual es la forma más cómoda (sobre todo para el usuario, un exe y listo) de distribuir un juego o proyecto en fenix? He usado las opciones -a y -s, me crea un ejecutable que si lo planto en la carpeta de bennu funciona, pero que si lo saco a otra no funciona.  He probado a copiar todas las mod_XXX que usaba mi programa más las que no empiezan por mod y en el stdout me dice que could not load library, pero no me da error de faltar librerias ¿que es todo lo que debo incluir y como?
Title: Re: ¿que librerias debo incluir? ¿cual es la mejor forma de distribuir un proyecto?
Post by: Prg on September 16, 2008, 10:48:01 PM
Creo que debes incluir todas las librerías, en otra parte del foro se hablaba de que "el proceso se podía quedar zombi".
mira http://forum.bennugd.org/index.php?topic=117.0 (http://forum.bennugd.org/index.php?topic=117.0)
Title: Re: ¿que librerias debo incluir? ¿cual es la mejor forma de distribuir un proyecto?
Post by: Danielo515 on September 16, 2008, 10:48:21 PM
¿Como puede mi proyecto pesar 4MB y ocupar 1 en disco? y al comprimirlo tiene el satánico tamaño de 999 MB
Title: Re: ¿que librerias debo incluir? ¿cual es la mejor forma de distribuir un proyecto?
Post by: Prg on September 16, 2008, 10:50:29 PM
ja ja ja ja, y si lo comprimes en 7zip u otro formato  :D
Title: Re: ¿que librerias debo incluir? ¿cual es la mejor forma de distribuir un proyec
Post by: Danielo515 on September 16, 2008, 11:32:01 PM
¿que tiene de bueno el formato 7z? yo es que siempre me ha parecido un coñazo porque tenia que andar descargando programas nuevos, pero si supiera lo probaría.
Title: Re: ¿que librerias debo incluir? ¿cual es la mejor forma de distribuir un proyecto?
Post by: blostec on September 18, 2008, 05:56:07 PM
Quote from: Danielo515 on September 16, 2008, 10:48:21 PM
¿Como puede mi proyecto pesar 4MB y ocupar 1 en disco? y al comprimirlo tiene el satánico tamaño de 999 MB

999MB??? no seran KB?? 

El 7z em muchas ocasiones tiene un ratio de compresión mejor que el .zip y el .rar. Simplemente usa el que mas te guste.
Title: Re: ¿que librerias debo incluir? ¿cual es la mejor forma de distribuir un proyec
Post by: Windgate on October 21, 2008, 09:09:17 PM
Al margen de esos errores de tamaño del archivo (¿999Mb ó 999Kb? lol).

¿La mejor opción para incluir librerías y empezar un proyecto es cargarlas todas?

Y si es así, ¿Hay algún fuente por ahí para usar con INCLUDE y tener así las librerías cargadas usando sólo una linea de código y sin necesidad de buscar cuáles son todas?

Esta duda me corroe... xD
Title: Re: ¿que librerias debo incluir? ¿cual es la mejor forma de distribuir un proyecto?
Post by: TYCO on October 21, 2008, 10:39:03 PM
Donde tengas el Compilador e Interprete con todas las librerías y mod_xxx, crea un archivo con el nombre "bgdc.import"
y hay metes las librerías y módulos que necesites en tu proyecto. Ejemplo:

librender
libscroll
libsdlhandler
libwm

mod_file
mod_grproc

No tendrías que añadir ninguna línea en tu .PRG del tipo "import mod_...."

Esta claro que podrías incluir todas, para no tener que estar averiguando cuales necesitas, aunque eso seria malgastar memoria en funciones que no necesitas. Quizás en un futuro, quien sabe, Bennu sea capaz por si sólo incluir las librerías y mod_xxx que el necesite automáticamente.
Title: Re: ¿que librerias debo incluir? ¿cual es la mejor forma de distribuir un proyecto?
Post by: SplinterGU on October 22, 2008, 01:32:19 AM
El problema de la autoinclusion esta en que muchos modulos pueden tener la misma funcion con diferentes apis, que entrarian en conflicto de ser usadas a la vez... ya pronto veran ejemplos...
Pero esto se podria automatizar con un buen Wizard de proyectos, que podria estar incluido en un ide...

Aca tengo otra propuesta a ver quien se anima... hacer un wizard de proyectos, haciendo unas cuantas preguntas que genere el esqueleto o simplemente crear un archivo "modules.inc" asi solo incluimos 1 soloa archivo en el codigo para los modules, obviamente este archivo contendria todos los imports que necesitemos... o tambien puede crear un "miprojecto.import"
Title: Re: ¿que librerias debo incluir? ¿cual es la mejor forma de distribuir un proyec
Post by: Windgate on November 04, 2008, 05:28:31 PM
¡Hello amigos!

Aunque soy NOOB en Bennu, respecto a lo que dices quizá os interese el post que acabo de publicar en el foro:

VER POST AQUÍ: http://forum.bennugd.org/index.php?topic=84.msg3246#msg3246 (http://forum.bennugd.org/index.php?topic=84.msg3246#msg3246)

No es ningún gestor de proyectos en sí mismo, pero al menos facilita hacer los IMPORT sin "ensuciar" el programa principal, sirve principalmente para comenzar a programar en Bennu sin preocuparse por importar DLLs, en plan DIV/Fenix.
Title: Re: ¿que librerias debo incluir? ¿cual es la mejor forma de distribuir un proyecto?
Post by: TYCO on November 05, 2008, 09:35:01 AM
Para esa cuestión ya existe el archivo "bgdc.import" y no tienes que añadir ningún include en el código.
Title: Re: ¿que librerias debo incluir? ¿cual es la mejor forma de distribuir un proyec
Post by: Windgate on November 05, 2008, 12:17:48 PM
Interesante, ¿Y BGDC.import se incluye con un INCLUDE o cómo funciona?

Y yo que estaba emocionado con mi creación...
Title: Re: ¿que librerias debo incluir? ¿cual es la mejor forma de distribuir un proyecto?
Post by: SplinterGU on November 05, 2008, 12:37:00 PM
busca en la seccion documentacion...
Title: Re: ¿que librerias debo incluir? ¿cual es la mejor forma de distribuir un proyec
Post by: Windgate on November 07, 2008, 12:39:57 AM
Ok, muchas gracias, no sabía que podían usarse los import incluso para módulos distintos!

Estoy alucinando con la potencia de Bennu. Probaré a fondo los .import pero por el momento sigo haciendo todos los import necesarios directamente en el programa principal.

Por ahora me va bien así, pero... ¿Me puede dar algún problema a la larga o simplemente se consumen más recursos?
Title: Re: ¿que librerias debo incluir? ¿cual es la mejor forma de distribuir un proyecto?
Post by: SplinterGU on November 07, 2008, 01:44:49 AM
es lo mismo, los .imp o .import es solo un archivo de texto, con el nombre del proyecto (o el nombre bgdc.import o bgdc.imp para que sirva automaticamente para cualquier codigo que compilemos), y dentro del archivo de texto hay solo una lista de los nombres de los modulos a cargar... o sea, que si haces un "dir /b *.dll > bgdc.import" y luego borras de la lista las dlls que no van, ya no tenes que hacer nunca mas el import desde codigo... esto incluye todos los modulos directamente...
Title: Re: ¿que librerias debo incluir? ¿cual es la mejor forma de distribuir un proyec
Post by: Windgate on November 07, 2008, 01:08:39 PM
De acuerdo, ¿Pero dónde deben residir las DLL?

Como te digo, ahora mismo las tengo todas en la carpeta del videojuego, ¿Dónde las buscará si hago un import y borro las DLL de la carpeta del videojuego?

La "instalación" de Bennu que sí que tiene todas las DLL, el compilador y todo eso la tengo en C:/wip15b, la copié ahí directamente sin instalar nada. Siento ser tan ceporro, pero esto de los import es toda una novedad para mí...
Title: Re: ¿que librerias debo incluir? ¿cual es la mejor forma de distribuir un proyecto?
Post by: SplinterGU on November 07, 2008, 02:01:30 PM
si la borras de la carpeta del videojuego las debes tener en algun lugar que este en la variable PATH del sistema o agregarla tu ahi...
Title: Re: ¿que librerias debo incluir? ¿cual es la mejor forma de distribuir un proyec
Post by: TYCO on November 07, 2008, 02:06:11 PM
El archivo "bgdc.import" debe estar en el mismo directorio que el archivo "bgdc.exe" (el compilador), los "lib*.dll" y los "mod_*.dll" debes tenerlos en el mismo directorio o en un directorio contenido en PATH.

Tus .PRG y el .DCB los puedes tener en otro directorio y con un .BAT compilarlo y ejecutarlo:

Ejemplo de archivo .BAT (Bennu-WIP15.BAT):
@ECHO OFF
C:\Bennu-WIP15\bgdc -g MiJuego.prg
pause
C:\Bennu-WIP15\bgdi MiJuego.dcb >Log.txt 2>Error.txt

El .BAT debe estar en el mismo directorio que los .PRG y .DCB