Autor Tema: Minitutorial de configuración de bennugd linux  (Leído 2816 veces)

alex

  • Sr. Member
  • ****
  • Mensajes: 262
  • Karma: 7
  • BENNUGD!!!
Minitutorial de configuración de bennugd linux
« en: Octubre 29, 2012, 09:55:08 pm »
Creo este post para los que quieran aprender sobre como linux averigua donde buscar las librerias, para que cualquiera que no sepa pregunte y para tener un sitio ordenado donde se puedan recurrir a buscar librerias o codigo fuente sobre ella (y posibles errores de compilaión) (en vez de ir navegando por el foro).

1) Linux busca las librerias (dinamicas) en:
- la variable: LD_LIBRARY_PATH  se modifica asi: se abre la terminal y se escribe:
Código: [Seleccionar]
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/direc/tor/io/nombrelibreria.so- En el fichero /etc/ld.so.cache  que es el generado por /sbin/ldconfig y /sbin/ldconfig.real que toman de referencia el archivo /etc/ld.so.conf que toma de referencia los archivos (acabados en .conf) de la carpeta /etc/ld.so.conf.d. Bennugd ya tiene su directorio de las libs definido en un archivo /etc/ld.so.conf.d/bennugd.conf. Es decir que si queremos añadir libs a Bennugd solo habria que meter las carpetas en el subdirectorio lib (junto con las demas libs y modules) y actualizar el ld.so.cache: terminal "sudo ldconfig" o si no os va bien "sudo config.real".

Nota: Intentare tener actualizado la informacion de este mensaje intentando responder todas las dudas aqui, tambien intentare tener actualizado los contenidos descargables como librerias u otros archivos.
« última modificación: Octubre 30, 2012, 04:39:25 pm por alex »

panreyes

  • Administrator
  • *****
  • Mensajes: 2283
  • Karma: 82
    • panreyes.com
Re:Minitutorial de configuración de bennugd linux
« Respuesta #1 en: Diciembre 23, 2012, 12:51:06 pm »
Igual me equivoco, pero, ¿es absolutamente necesario hacer un script para añadir la ruta de los .so antes de ejecutar el juego? ¿No puede intentar cargar las librerías desde la ruta del ejecutable primero?

alex

  • Sr. Member
  • ****
  • Mensajes: 262
  • Karma: 7
  • BENNUGD!!!
Re:Minitutorial de configuración de bennugd linux
« Respuesta #2 en: Diciembre 27, 2012, 09:32:18 pm »
no te entendi bien... script si no estan las librerias administradas en el sistema... yo cuando añadi la bennu3d corri como root ldconfig para actualizar las librerias que busca el sistema

panreyes

  • Administrator
  • *****
  • Mensajes: 2283
  • Karma: 82
    • panreyes.com
Re:Minitutorial de configuración de bennugd linux
« Respuesta #3 en: Diciembre 27, 2012, 09:51:05 pm »
Hablo de poder ejecutar el bgdi renombrado directamente y que sea capaz de localizar las librerías si están en su mismo directorio o en uno cercano.


Sé que la limitación está en dlopen y en la forma en la que funciona, pero ¿no sería posible que el BGDI estableciera $LD_LIBRARY_PATH en su mismo directorio, o bgd-runtime, o libs, en caso de no cargar las librería a la primera?


---------


Me autocorrijo, no era tan complicado:

Citar
If filename contains a slash ("/"), then it is interpreted as a
       (relative or absolute) pathname.
http://www.kernel.org/doc/man-pages/online/pages/man3/dlopen.3.html
« última modificación: Diciembre 27, 2012, 09:53:29 pm por PiXeL »

SplinterGU

  • Administrator
  • *****
  • Mensajes: 13011
  • Karma: 379
Re:Minitutorial de configuración de bennugd linux
« Respuesta #4 en: Diciembre 27, 2012, 10:25:32 pm »
Igual me equivoco, pero, ¿es absolutamente necesario hacer un script para añadir la ruta de los .so antes de ejecutar el juego? ¿No puede intentar cargar las librerías desde la ruta del ejecutable primero?

solo con las libererias de bennugd, las que se enlazan a traves del sistema (sdl, mixer, png, etc) necesitan estar en el path del sistema para librerias dinamicas.
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

SplinterGU

  • Administrator
  • *****
  • Mensajes: 13011
  • Karma: 379
Re:Minitutorial de configuración de bennugd linux
« Respuesta #5 en: Diciembre 27, 2012, 10:29:15 pm »
Sé que la limitación está en dlopen y en la forma en la que funciona, pero ¿no sería posible que el BGDI estableciera $LD_LIBRARY_PATH en su mismo directorio, o bgd-runtime, o libs, en caso de no cargar las librería a la primera?

no crees que no lo intente? la unica opcion seria cargar las librerias desde codigo y no enlazarlas directamente desde el compilador... pero quedan las dependencias de las externas sin poder resolver ese problema...
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

panreyes

  • Administrator
  • *****
  • Mensajes: 2283
  • Karma: 82
    • panreyes.com
Re:Minitutorial de configuración de bennugd linux
« Respuesta #6 en: Diciembre 27, 2012, 10:40:09 pm »
Me imaginaba que sí, pero bueno, por preguntar que no quede :)