Avances, Diario de...

Started by SplinterGU, April 17, 2008, 03:00:51 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Drumpi

Jurl? ¿en cristiano? ¿o son cambios internos?
Aprovecho para darte uno d elos karmas que te debo por la nueva versión... en SVN :D
Hala, como con 1001 procesos sólo va a 9 FPS, vamos a meterle 32 veces más, a ver si revienta.
(Drumpi epic moment)

SplinterGU

internos y externos... para las opendir y readdir.
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

izubiaurre

Acabo de bajarme la última versión RC y (aunque he estado algunos meses sin seguir mucho) he visto que ahora todos archivos se encuentran en la misma carpeta, cuando antes se dividían en subcarpetas (/bin, /externals, /libs y /modules). Supongo que el cambio ha sido en pro de la facilidad de montar los proyectos, cosa que agradezco. Aún así le veo un "pero": la carpeta del ejecutable se llena de dlls. ¿Se podrían meter en subcarpetas para así tener sólo el ejecutable (por limpieza)? ¿Cómo? ¿Hay algún modo de saber exactamente, sin hacerlo manualmente, qué librerías, módulos... necesito en mi proyecto? Hasta ahora yo lo he hecho a lo fácil, copiar todo a la carpeta del ejecutable. (Creo que esto sería tema para un tutorial)

Un saludo

SplinterGU

tenes carpetas especiales para hacer eso, que podes llamar plugins, modules, dlls, mod, y algunas mas, busca en este hilo y vas a encontrar la lista.
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

izubiaurre

¿Podrías ser un poco más específico? Es un hilo de ciento y pico páginas...

SplinterGU

en este mismo hilo, en buscar, pone "plugins" y dale enter, el 2do resultado esta la solucion
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

izubiaurre

Quote from: SplinterGU on March 09, 2011, 03:52:54 AM
ya es posible poner las dlls en carpetas separadas, pero con las siguientes restricciones:

- bgdrtm debe estar en la carpeta del ejecutable, en el caso de linux tambien debe estar en LD_LIBRARY_PATH (o ld.conf*) el path donde se haya la libreria.
- las dlls/so se pueden poner en las siguientes subcarpetas donde se encuentre el bgdi que se ejecuta: "runtime", "modules", "mod", "mods", "lib", "libs", "extensions", "plugins"
se puede usar 1 o varias de estas subcarpetas.
- ahora se agrega el path del binario en el path interno donde se abren los archivos de recursos del juego (incluido el dcb)

en un rato subo las modificaciones, no hare release binaria de momento, pero el que quiere compilar y probarla ahi lo tendra disponible.

me falta testear la version windows, y consolas, solo probe la version linux.

Supongo que te refieres a esto. Aunque no lo he entendido bien, esto exactamente:

Quoteahora se agrega el path del binario en el path interno donde se abren los archivos de recursos del juego (incluido el dcb)

Gracias de antemano

SplinterGU

podes crear cualquiera de las siguientes subcarpetas y meter las dlls ahi

"runtime", "modules", "mod", "mods", "lib", "libs", "extensions", "plugins"
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

izubiaurre

Quote from: SplinterGU on July 11, 2011, 10:02:31 PM
podes crear cualquiera de las siguientes subcarpetas y meter las dlls ahi

"runtime", "modules", "mod", "mods", "lib", "libs", "extensions", "plugins"

He hecho algunas pruebas, pero tengo que hacer lo de siempre, meter todas las dll en la misma carpeta que el ejecutable.

Los pasos que seguí fueron estos:

1-. Crear una carpeta "libs". Meter ahí todos los dll excepto libbgdrtm.dll.
2-. Meto libbgdrtm.dll en la misma carpeta que ele ejecutable y me pide libeay32.dll para que funcione.
3-. Meto libeay32.dll y al ejecutar me dice: "Could not load library."
4-. Así que sólo logro que funcione metiendo todo en el mismo sitio.

SplinterGU

creo que ya se explico, pero lo voy a repetir, no viene demas... (si alguien lo documenta en la wiki o en algun lugar seria grandioso)

estas carpetas solo se pueden usar para las librerias que carga bennugd, aquellas que se linkean deben estar en la carpeta del binario... para no perder mucho tiempo viendo que va en que y que no, yo recomiendo poner todas las .lib y las dlls externas (SDL, eay, crypt, etc) en la carpeta del binario y todos los mod_* donde quieren (de las carpetas mencionadas)
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

izubiaurre

Pues sigo intentando y no lo consigo:

Si pongo cualquier mod_* necesario del juego en las carpetas mencionadas, me da este error: "a:0: error: a: file not found ( token error: EOF )."

¿Hay que compilar el prg de alguna otra manera? Yo, normalmente, compilo con bgdc -C a nombre_del_juego.prg

Gracias por la paciencia!

SplinterGU

no, no deberias meter nada...

si revisas el hilo, vas a ver que alguien tambien tuvo la misma inquietud y la resolvio como yo digo.
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

SplinterGU

perdon, las carpetas son estas

    "modules",
    "mod",
    "mods",
    "extensions",
    "plugins",
    "data",
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

izubiaurre

Voy por la pág. 67 y hasta ahora nada de lo que estaba preguntando, pero mucho de lo que no leí en su tiempo. Eso sí, tiene tela tener un hilo con tantas págs.!

De todo esto, y relacionado con fbmx, sería interesante tener en el moddesc.exe, algunos parámetros para sacar sólamente nombres de funciones, funciones con sus parámetros, lista de variables...

por ejemplo

moddesc -func mod_scroll.dll

así, el cde completion help de fbmx podría añadir funciones, vars, ... de otros módulos que no fuesen oficiales, o sólo cargar los que aparezcan en los import.

Un saludo

SplinterGU

esta buena la idea... le agregare esos features...
Download Lastest BennuGD Release: http://www.bennugd.org/node/2