jueves, 23 de abril de 2009

No voy a hablar del lanzamiento de Ubuntu 9.10...

Al menos hasta que lo pruebe (descargado está).

lunes, 13 de abril de 2009

Librerías dinámicas de VTK en OS X

Acostumbrado como estoy al sencillo sistema de librerías compartidas en GNU/Linux, no acabo de entender varios mecanismos que se usan en OS X. Uno es el caso de las librerías dinámicas, las famosas ".dylib".

En teoría el concepto es el mismo que el de las ".so", pero hay cosas que me desesperan. Cuando compilo una aplicación que usa las librerías VTK, al estar instaladas en /usr/local/lib, el maldito sistema no las encuentra. Como llevo tiempo haciendo apaños, os cuento hasta dónde he llegado y si alguien tiene la solución definitiva, por favor que me la cuente antes de que empiece a linkar estáticamente (!!).Por cierto, es indiferente usar cmake que qmake, con automake no he probado pero después de acostumbrarme a los otros dos como que cada vez me da más pereza.

Problema: si compilamos el programa e intentamos lanzarlo desde una terminal, nos escupe diciendo que no puede encontar las librerías libvtk* y sus respectivos símbolos. Si analizamos los links del ejecutable con:

otool -L ejecutable

Obtenemos una bonita lista donde podemos comprobar que las librerías VTK no tienen su correspondiente path.

Después de leer detenidamente un montón de documentación vía web de la que no guardo los links, me entero que a partir de Leopard hay una opción para usar -rpath (runpaths) tanto de forma global como relativa. Bien, recompilo VTK con el RPATH activado (esto tarda un rato)... y no funciona. Genial, es como cuando he intentado compilar en x86_64 y no puedo porque carbon sólo es 32 bits y cocoa me da error con QT 4.5 (!). Si es que sobre el papel todo es muy bonito, pero luego... en fin, vamos a los apaños.

Solución/apaño #1: añadir en .bash_profile una línea para que la carpeta de las librerías VTK esté en el path de búsqueda. Después de un rato de amena lectura, consigo enterarme que en el mac es:

export DYLD_LIBRARY_PATH=$DYLD_LIBRARY_PATH:/usr/local/lib/vtk-5.2/

Bien, hecho esto, primera victoria: los ejecutables corren desde la bash. Después de pensar (ingenuo de mí) que estaba todo solucionado, cuando voy a debuggear (toma palabro!) desde Xcode... la misma historia!

Solución-apaño #2: después de trastear un buen rato con la ingente cantidad de opciones de compilación en Xcode, resulta que no es ahí (bravo!). Hay que añadir la variable de entorno en el ejecutable, como os pongo en esta captura:


Bueno, ahora funcionar funciona. Pero miedo me da lanzar shark o alguna otra aplicación de análisis. El caso es que hace tiempo no tuve este problema así que no sé si es un bug de VTK 5.2 o es que soy cada vez más torpe.

¿Alguna idea?

miércoles, 8 de abril de 2009

Libros libres... de software libre

He encontrado a través de esta página una buena recopilación de libros listos para descargar tanto de GNU/Linux en general como de programas libres como GIMP, Inkscape, OpenOffice, etc.

Os dejo una muestra:

Manuales Informática

Ir a la Ficha del Libro Curso de Administración de Sistemas Linux Ir a la Ficha del Libro Tutorial Linux Ir a la Ficha del Libro Manual GUGLER de OpenOffice.org Ir a la Ficha del Libro Iniciándose en Firefox Ir a la Ficha del Libro Ciberia Ir a la Ficha del Libro CBEX123 1 Hardware Ir a la Ficha del Libro CBEX123 2 Software


Cuadernos de Tecnología

Ir a la Ficha del Libro Cuaderno de Tecnología 1: GNU/Linux Introducción al Software Libre Ir a la Ficha del Libro Cuaderno de Tecnología 2: Firefox Ir a la Ficha del Libro Cuaderno de Tecnología 3: Evolution y Gaim Ir a la Ficha del Libro Cuaderno de Tecnología 4: Gimp e Inkscape Ir a la Ficha del Libro Cuaderno de Tecnología 5: OpenOffice Writer y Calc Ir a la Ficha del Libro Cuaderno de Tecnología 6: OpenOffice Impress y Draw Ir a la Ficha del Libro Cuaderno de Tecnología 7: OpenOffice Base