Description of problem: When installing a version of nscd that is newer than the installed version of glibc, no error is given that glibc should match the version of nscd. Version-Release number of selected component (if applicable): How reproducible: Every time Steps to Reproduce: 1.Make sure you're not at the latest version of glibc 2.Install a newer version either by the rpm command or up2date Actual results: nscd installs without saying that glibc should also be updated. Expected results: It should error saying that the versions of glibc and nscd should match Additional info:
The problem is easy to reproduce: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [root@localhost ~]# rpm -q glibc nscd | sort glibc-2.3.4-2.43.i686 glibc-2.3.4-2.43.x86_64 nscd-2.3.4-2.43.x86_64 [root@localhost ~]# service nscd stop Stopping nscd: [ OK ] [root@localhost ~]# rpm -Uvh nscd-2.3.4-2.43.el4_8.6.x86_64.rpm Preparing... ########################################### [100%] 1:nscd ########################################### [100%] [root@localhost ~]# service nscd start Starting nscd: /usr/sbin/nscd: relocation error: /usr/sbin/nscd: symbol __nss_next2, version GLIBC_PRIVATE not defined in file libc.so.6 with link time reference [FAILED] ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ It seems like a Requires line could be added for nscd in the glibc.spec to match the version numbers and this would prevent situations like the above. I'll try that.
Yes, in fact, I see the glibc-utils packages has a Requires line in glibc.spec: %package utils Summary: Development utilities from GNU C library Group: Development/Tools Requires: glibc = %{version}-%{release} I'll just copy the Requires line for %package nscd and test it. I also see that RHEL 5 already has this in glibc-2.5-58: %package -n nscd ... Requires: libselinux >= 1.17.10-1, audit-libs >= 1.1.3, glibc = %{version}-%{release}
It worked: [root@localhost ~]# rpm -q glibc nscd | sort glibc-2.3.4-2.43.i686 glibc-2.3.4-2.43.x86_64 nscd-2.3.4-2.43.x86_64 [root@localhost ~]# rpm -Uvh nscd-2.3.4-2.43.el4_8.6.bz657009.x86_64.rpm error: Failed dependencies: glibc = 2.3.4-2.43.el4_8.6.bz657009 is needed by nscd-2.3.4-2.43.el4_8.6.bz657009.x86_64 Can we add the 'Requires: glibc = %{version}-%{release}' line to the RHEL 4 nscd rpm?
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. http://rhn.redhat.com/errata/RHSA-2012-0125.html