error causado por un símbolo indefinido: glXGetProcAddress

Después de mi última actualización dist-de mi sistema Debian de testing, X se niega a comenzar. Puedo ver el siguiente error (que aparece cuando se inicia gnome-session):

error de búsqueda de símbolo: /usr/lib/i386-linux-gnu/libcairo.so.2: undefined symbol: glXGetProcAddress

Además, incluso texlive se niega a actualizar, con el mismo error (causado por luatex).

No sé cómo solucionar este problema: ¿es posible que falte una biblioteca crucial? Si no, ¿qué otra cosa podría causar este problema?

La respuesta de @ peterph fue muy cercana al problema.

La tarjeta de video era una Matrox G550 (mga) pero en el pasado se había instalado una nvidia y algunas cosas glx permanecían en /usr/lib/tls .

No tengo experiencia con el controller de mga, pero tengo entendido que no hay una implementación patentada de glx, así que seguimos intentando que la table funcione.

Una vez instalados libgl1-table-glx y glx-alternative-table revisamos el libcairo con ldd , luego usamos dpkg -S con ruta completa para entender de qué packages se seleccionaron libGL y libGLcore resueltos por ldd , solo para comprobar que era table, ambas bibliotecas no estaban en ningún package.

Trasladó esas bibliotecas y esta vez ldd mostró las bibliotecas table adecuadas, en este punto le pedí a @zar que lo comprobara nuevamente y su respuesta fue que esta vez apt-get -f install terminó correctamente y gdm3 ejecutó sin errores.

Incluso siendo un error, creo que no podemos completar ninguna request de error ya que el controller nvidia no debatido ha roto el contrato .

La installation de controlleres propietarios sigue siendo mala , no entiendo por qué favorecen su propia basura supposed-to-install-everywhere.run -installation- en todas supposed-to-install-everywhere.run lugar de search algún esfuerzo de queueboración al less con distribuciones importantes (que probablemente vendría gratis / sin cargo) .

El error significa que su installation en El Cairo no count con la dependencia del enlace en time de ejecución: a juzgar por el nombre del símbolo, es un package de implementación de OpenGL (tal vez Mesa) que falta o está dañado. La reinstallation de Cairo podría ayudar, siempre que el administrador del package solucione las dependencies del package, que probablemente sean la causa del error, e instale todos los requisitos previos faltantes.

También puede ejecutar ldd /usr/lib/i386-linux-gnu/libcairo.so.2 y search líneas que contengan => not found , que le indicará qué biblioteca falta en su sistema, busque qué package lo contiene y ( re) instalarlo.

Este es también un síndrome típico para situaciones en las que los packages dependientes se actualizan sin actualizar sus dependencies (lo que puede suceder fácilmente, por ejemplo, con controlleres propietarios), que resultó ser el caso aquí.

En la nomenclatura RH: (No conozco el formatting de empaquetamiento de Debian)

Intenté y encontré lo siguiente:

  1. # sudo **'yum whatprovides /usr/lib/libGL.so.1'** produce:

     *table-libGL-9.2.5-1.20131220.fc20.i686 : Mesa libGL runtime libraries and DRI drivers* 

    A. ldd imprime dependencies de biblioteca de objects compartidos , por lo que no es la herramienta para el trabajo A MENOS QUE haya un problema con el enlace. No encontré nada.

Me veía REALMENTE DURO y encontré esta pregunta

2. El rest fue fácil:

  # nm -D /usr/lib/libGL.so.1 |grep 'glXGetProcAddress' 00014310 T glXGetProcAddress 00014310 T glXGetProcAddressARB 

3. Tengo Adobe Reader para ejecutar después de esto.

Gnome se escriben de acuerdo con la GTK+ library y dependen de la biblioteca de cairo , su cairo library produce cuando actualiza, re-install , no desde el local, vuelva a downloadla.utilice el apt-cache y busque cada cairo packages