rhel – ¿Cómo averiguo el número de versión de una biblioteca instalada?

Pregunta:

Pregunta relevante para RedHat / CentOS. Estoy un poco confundido entre el paquete y la biblioteca y cómo anclarlos a una versión fija.

Hay un error de sustitución de X11 en las versiones recientes de libxcb que afecta a mis programas C. libxcb-1.5-1 no tiene ese error.

Así que lo hice:

# yum remove libxcb-devel
# rpm -Uvh --oldpackage libxcb-1.5-1.el6.i686.rpm 

Y ahora el error se ha ido y mi software funciona bien.

Avance rápido unas semanas y el error ha vuelto.

# yum info libxcb-devel
Loaded plugins: refresh-packagekit, security
Available Packages
Name       : libxcb-devel
Arch       : i686
Version    : 1.9.1
Release    : 2.el6
Size       : 1.0 M
Repo       : sl-security

¿Pero es esa la versión instalada o la versión disponible a través del repositorio? ¿Cómo puedo saber qué versión de libxcb está instalada actualmente?

$ ll /usr/lib/libxcb.so*
lrwxrwxrwx 1 root root     15 Aug  6 03:38 /usr/lib/libxcb.so.1 -> libxcb.so.1.1.0*
-rwxr-xr-x 1 root root 130752 Oct 14  2014 /usr/lib/libxcb.so.1.1.0*
$ readelf -d /usr/lib/libxcb.so.1.1.0 | grep SONAME
 0x0000000e (SONAME)                     Library soname: [libxcb.so.1]

Entonces estoy confundido entre el número de versión que muestra yum, el número en el .so y el número que quiero …

Respuesta:

Si desea saber qué versión está instalada , simplemente ejecute:

rpm -q libxcb-devel

Si desea evitar actualizaciones de este paquete, puede agregar el paquete a la configuración de exclude yum. Agregue lo siguiente a la sección main en /etc/yum.conf :

exclude=libxcb-devel

La versión de la biblioteca (por ejemplo, en libxcb.so.1.1.0 ) raras veces rastrea la versión del paquete y está destinada a rastrear los cambios de API.

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top

web tasarım