Servidor de desarrollo…

Para correr BB en debian (notese que no use los instaladores…) la idea era intentar agarrar la aplicacion de respaldo y hacer que corriera en otro linux…

1. primer problema…librerias dinamicas que cambian de nombre…
grandioso.
a dar prueba y error…
———–
[exec] /usr/blackboard/apps/modperl/bin/httpd: error while loading shared libraries: libdb.so.3: cannot open shared object file: No such file or directory

veamos tenemos una las librerias mas nuevas de libdb (4) por cierto…

sagan:/usr/lib# ln -s libdb-3.2.so libdb.so.3 (no funciona truena el modperl)
———-
Intentemos
apt-cache search libdb2
libdb2 – The Berkeley database routines (run-time files)
libdb2-dbg – The Berkeley database routines (debugging libraries)
libdb2-dev – The Berkeley database routines (development files)
libdb2-ruby1.6 – Interface to Berkeley DB for Ruby 1.6
libdb2-ruby1.8 – Interface to Berkeley DB for Ruby 1.8
libdb2-util – The Berkeley database routines (utilities)

bien… aqui esta lo que necesitamos
apt-get install libdb2
Y adios a la liga simbolica (de hecho primero adios a la liga simbolica y luego apt-get)

[exec] /usr/blackboard/apps/httpd/bin/httpd: error while loading shared libraries: libgdbm.so.2: cannot open shared object file: No such file or directory
[exec] Result: 3

busquemos esta libreria… (grrr… compilaron modperl contra un libgdm mas antiguo)

sagan:/usr/lib#ls libgdbm
libgdbm.so.3 libgdbm_compat.so.3
libgdbm.so.3.0.0 libgdbm_compat.so.3.0.0
sagan:/usr/lib# ln -s libgdbm.so.3.0.0 libgdbm.so.2

parece funcionar (pero no funciona… es demasiado nueva)

diantres… parece ser que tiene funciones nuevas:

ldd -d mod_rewrite.so libc.so.6 => /lib/libc.so.6 (0x40013000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x80000000)
undefined symbol: ap_user_id (./mod_rewrite.so)
undefined symbol: ap_null_cleanup (./mod_rewrite.so)

veamos usando la libreria compat (seguro incorpora funcionalidad de lo anterior)

sagan:/usr/lib# ls libgdbm
libgdbm.so.3 libgdbm.so.3.0.0 libgdbm_compat.so.3 libgdbm_compat.so.3.0.0
sagan:/usr/lib# ln -s libgdbm_compat.so.3.0.0 libgdbm.so.2

Hecho funciona nuestra aplicacion tamaño moustro en una plataforma con parches al dia (debian Sarge)… aunque la de produccion esta en un RH 7.3 con los updates de fedora legacy…

Temible… para llegar hasta aqui…
1. Solicitar maquina (viernes)
2. Verificar que no se ha entregado la maquina (lunes)
3. Recibir llamada de almacen (miercoles) 1:30 llevar la maquina al site (1:40)… ya mencione que tengo hasta las 2 para instalarla? a esa hora se van a comer y o me quedo hasta las 4pm en el site o hago lo mismo y me voy a comer… no reconoce bien el SATA
4. Instalar Debian Sarge y compilar un kernel ad hoc (jueves), listo movamos los archivos de respaldo para intentar correrlos
5. Viernes (todo el dia) probar el instalador… no funciona, agarrar desde los respaldos (tgz) y forzar las aplicaciones… a funcionar como si fuera tomar desde backup y poner la aplicacion a funcionar…

Listo no es una receta y necesita documentarse… mejor.

Si se que esto no hace mucho sentido, pero al menos a mi si… y quiero conservarlo por si luego no lo encuentro en mi maquina ;)

Esta entrada fue publicada en General. Guarda el enlace permanente.

2 respuestas a Servidor de desarrollo…

  1. MaoP dijo:

    Hola, a todos nos pasa que compilando un programa, o instalando uno, nos pied cierta bibliioteca y no sabemos que paquete la contiene, para esto tenemos a http://packages.debian.org ahí pudes buscar paquetes (como el apt-cache search) o (lo que nos interesa) buscar por contenido del paquete, en tu caso, puedes probar con la palabra clave: libgdbm.so.2 , buscar, y te sale el siguiente paquete:

    usr/lib/libgdbm.so.2 oldlibs/libgdbmg1

    libgdbmg1 fué nuestro paquete ;-)

    Tambien para ver a que paquete pertenece cierto archivo en nuestro sistema dpkg -S archivo.ext , esto funciona solo si ya tenemos el paquete instalado, y con dpkg -L paquete, nos da un listado de todos los archivos que contiene <paquete>..
    Uff me alargué demasiado :-P, espero que sea de ayuda, saludos…

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.