lunes, 19 de octubre de 2009

¡Que no cunda el pánico!

¿Después de una actualización de los drivers de intel no ves un carajo de las X? ¿Te ha dejado de funcionar el teclado en un macbook? ¿Usas ubuntu jaunty quizás? A mí también me ha pasado. Sigue leyendo...

Como a más de uno le ha pasado, un día arranco el macbook-ubuntu y ¡terror! no arrancan las X!!! Aparece una pantallita diciendo si quiero reconfigurar, usar una configuración básica o no-sé-qué-más. Pero, pero, perooooooo!!! ¿qué está pasando aquí? Respuesta: la última actualización de drivers de intel es incompatible con la solución (apaño, más bien) para los problemas de aceleración 3D que tenían los empaquetados originalmente con jaunty. Solución: arranca como puedas y actualizas todo con synaptic o apt-get:
sudo apt-get update && sudo apt-get -y upgrade

Reinicias y adiós al pánico. Explicación: la han cagado porque las resoluciones en los nuevos drivers vienen controladas por el kernel, no ha habido coordinación ninguna entre los testers y no se han dado cuenta que todo quisqui que tiene gráfica intel y jaunty ha hecho el apaño para restablecer la aceleración tresdé. Por suerte, el griterío ha sido lo suficientemente escandaloso para que un mantenedor de paquetes haya recibido la indirecta y haya hecho una "actualización" a la versión anterior del driver. Todo solucionado.

¿Todo? No.

Casualidad o no, más o menos al mismo tiempo el teclado del macbook 3.1 deja de funcionar. No sé si fue a la vez porque he estado trabajando con uno externo USB. Esto sí que es raro. Busco por ahí y no le pasa a nadie. Después de ese momento de desesperación en el que arrancas el OS-X, ves que no está tan mal, intentas trabajar en él y te das cuenta que es una mierda; respiro profundamente y me dispongo a solucionarlo.

Rebuscando arduamente, me encuentro con éste post (de mayo, ejem...). Para ser tan antiguo, lo que cuenta se parece mucho a lo que me pasa a mí... Compruebo en xev algunas teclas funcionan... casualmente las mismas que al individuo en cuestión.

Sigo leyendo las contestaciones y veo que al final (por suerte) el chico dice que la solución es desinstalar el controlador propietario del wifi (Broadcom). ¿¿¿Lo qué??? Esto suena a culo y cuatro témporas. Pero como estoy desesperado, para allá que voy.

Desinstalo el driver (en Sistema->Administración->Controladores de Hardware), reinicio, al arrancar pasan unos segundos y ¡voilá! teclado funcionando. Claro, ahora me pregunto, "lo de que funcione el teclado está bien, pero como que sin wifi esto es un ladrillo". Pues jugando con la suerte, opto por una estrategia güindousera: reinstalo el driver sin tener ni pajolera idea de qué estoy haciendo pero por probar no pierdo nada. No he tenido que conectar ni el cable de red, el .deb no se había borrado, reinicio y ¡tachán! wifi funcionando. Pulso con miedo Alt+F1 y... trrrrrrrrr... ¡funciona! Gracias Bill Gates, sin tantos años de tocar botones al tún-tún, nunca se me habría ocurrido hacer esto.

Vuelta a la normalidad.

jueves, 8 de octubre de 2009

Varios de programación

Después de actualizar mi obsoleto openSuse 10.3 a Ubuntu Jaunty en el trabajo, me he encontrado con unas cuantas sorpresitas.

Para empezar, Kdevelop 3.5.10 tiene un bug. No compila nada!!! El problema es que no está pensado para libtool 2.x y los scripts que crea hacen llamadas a $echo en vez de $ECHO. La solución chapuza es modificar a pelo el archivo libtool (en optimized/, debug/ o la carpeta en la de nuestra configuración de construcción). Cambiando la línea ECHO="echo" a echo="echo" se soluciona. Hay mejores (y más lentas, pero también generales) en este link. Es una cagada de las gordas, no obstante...

Si compilas algo usando la gsl, además de linkar contra esa librería, ahora también hay que hacerlo contra la libgslcblas. Esto lo descubrí usando el comando (visto aquí):
$ pkg-config --libs gsl

Que, por cierto, es un comando todo-terreno muy útil. Anotado queda para futuros errores de linkado.

Para terminar, el ejecutable no encontraba las vtk-5,4, que he compilado desde las fuentes porque en los repositorios hay una versión demasiado antigua (5.0). Así que, como no acabo de tener tiempo para aprender lo del rpath, lo solucioné a lo bruto, añadiendo el archivo /etc/ld.so.conf.d/libvtk.conf con ésta línea:
/usr/local/lib/vtk-5.4

Después de hacer un
$ sudo ldconfig
parece que está todo apañado.