Pytanie dotyczy RedHat / CentOS. Jestem trochę zdezorientowany między pakietem a biblioteką i tym, jak przypiąć je do stałej wersji.
W najnowszych wersjach libxcb występuje błąd rollover X11, który wpływa na moje programy w C. libxcb-1.5-1 nie ma tego błędu.
Więc zrobiłem:
# yum remove libxcb-devel
# rpm -Uvh --oldpackage libxcb-1.5-1.el6.i686.rpm
A teraz błąd zniknął, a moje oprogramowanie działa dobrze.
Przewiń do przodu o kilka tygodni, a błąd powróci.
# 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
Ale czy to zainstalowana wersja czy wersja dostępna za pośrednictwem repozytorium? Jak mogę sprawdzić, która wersja libxcb jest obecnie zainstalowana?
$ 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]
Więc jestem zdezorientowany między numerem wersji pokazanym przez yum, numerem na .so i numerem, który chcę ...