/usr/bin/xbmc: línea ***: **** Violación de segmento “$LIBDIR/xbmc/xbmc.bin” $SAVED_ARGS

Me he topado con un problema en XBMC. Lo peor de todo es que se cerraba sin más, así que lo ejecuté desde la terminal para ver que errores producía:

[ ~ ]$ xbmc
Running DIL (3.22.0) Version
DtsDeviceOpen: Opening HW in mode 0
DtsDeviceOpen: Create File Failed
libpng warning: iCCP: known incorrect sRGB profile
/usr/bin/xbmc: línea 143: 2433 Violación de segmento “$LIBDIR/xbmc/xbmc.bin” $SAVED_ARGS
Crash report available at /home/sigis/xbmc_crashlog-20140124_092332.log

Parece que el warning de libpng lo producen imágenes con metadatos incorrectos, pero eso no repercute en el funcionamiento del programa.

Para el segundo error, que en inglés sería:

/usr/bin/xbmc: line 143: 2433 Segmentation fault “$LIBDIR/xbmc/xbmx.bin” $SAVED_ARGS

Hay que … mirar el log (muestro aquí sólo los warnings y los errores):

############## XBMC CRASH LOG ###############
09:23:11 T:139839942457728 ERROR: GLX: Same window as before, refreshing context
09:23:16 T:139839942457728 WARNING: CreateLoader – Unsupported protocol(favourites) in favourites://
09:23:16 T:139839942457728 ERROR: Unable to load favourites:// (row 0 column 0)
09:23:16 T:139839942457728 ERROR: GetDirectory – Error getting favourites://
09:23:32 T:139839942457728 WARNING: CDVDMessageQueue(player)::Put MSGQ_NOT_INITIALIZED
09:23:32 T:139839591499520 ERROR: Unable to load librtmp.so.0, reason: librtmp.so.0: cannot open shared object file: No such file or directory

Según he leído por internet, parece ser que el error de Segmentation Fault lo produce el último error del log (el resto son producidos por el plugin que estoy utilizando). Le falta la librería librtmp.so.0.

La podemos conseguir ya sea instalando librtmp desde RPMfussion o librtmp0 desde ATrpms, este último nos ofrece una versión más vieja que RPMfussion. Si instalamos librtmp desde RPMfussion hay que acordarse de enlazar librtmp.so.0 a librtmp.so.1:

# Para x86_64
sudo ln -s /usr/lib64/librtmp.so.1 /usr/lib64/librtmp.so.0
# Para i686
sudo ln -s /usr/lib/librtmp.so.1 /usr/lib/librtmp.so.0

Y solucionado.

Dejo un pequeño script para futuras instalaciobnes de xbmc:

yum -y install xbmc librtmp
if [[ -f /usr/lib64/librtmp.so.1 && ! -f /usr/lib64/librtmp.so.0]]
then
  ln -s /usr/lib64/librtmp.so.1 /usr/lib64/librtmp.so.0
fi
if [[ -f /usr/lib/librtmp.so.1 && ! -f /usr/lib/librtmp.so.0]]
then
  ln -s /usr/lib/librtmp.so.1 /usr/lib/librtmp.so.0
fi
Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s