Después de actualizar Ubuntu a 16.04, algunos elementos gráficos empezaron a no funcionar correctamente. Por ejemplo, ejecutar ccsm
desde la línea de comando me dará el siguiente error:
Traceback (most recent call last):
File "/usr/bin/ccsm", line 32, in <module>
import gtk
File "/usr/lib/python2.7/dist-packages/gtk-2.0/gtk/__init__.py", line 40, in <module>
from gtk import _gtk
ImportError: /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0: undefined symbol: XRRGetMonitors
font-manager
da el siguiente error:
Error: Importing pygtk and gtk modules failed (/usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0: undefined symbol: XRRGetMonitors)
Qué tengo que hacer ?
Tarjeta gráfica: AMD Radeon R7 260X.
Salida de lspci -nn | grep VGA
:
01:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Bonaire XTX [Radeon R7 260X/360] [1002:6658]
Respuesta1
Tuve este problema recientemente y lo rastreé hasta una copia incompatible delibXrandr.so.2
En la máquina con el problema:
[20:45:36] [shane@ShanePC:~]$ ldd /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0 | grep -i randr
libXrandr.so.2 => /usr/local/lib/libXrandr.so.2 (0x00007fc9133be000)
[20:45:43] [shane@ShanePC:~]$
En una máquina sin el problema:
[21:07:46] [shane@Xion:~]$ ldd /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0 | grep -i randr
libXrandr.so.2 => /usr/lib/x86_64-linux-gnu/libXrandr.so.2 (0x00007f1542b7b000)
[21:07:51] [shane@Xion:~]$
Eliminar la biblioteca perdida /usr/local/lib/
(que era de 2014) resolvió el problema en mi caso.
La biblioteca correcta proviene del libxrandr2
paquete, por lo que reinstalarla también puede ser útil si ldd
apunta al lugar correcto.
Respuesta2
Parece que te falta el paquete libgtk2.0-0:amd64
sudo apt-get install libgtk2.0-0:amd64
Verifiqué esto encontrando el archivo en mi sistema y ejecutando
dpkg -S /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
Mi corazonada es que le faltarán más bibliotecas porque alguna parte de la instalación no funcionó correctamente. Puede que valga la pena ejecutar estos comandos para asegurarse de tener todos los paquetes que necesita.
sudo apt-get update
sudo apt-get dist upgrade
Editar:
Parece que tienes una versión corrupta de ese archivo. Puedes intentar reinstalar ese paquete.
sudo apt-get purge libgtk2.0-0:amd64
sudo apt-get install libgtk2.0-0:amd64