Trying to install collectd, but for some reason it claims python isn't installed:
yum install collectd
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package collectd.i386 0:4.10.0-4.el5 set to be updated
--> Processing Dependency: libxml2.so.2 for package: collectd
--> Processing Dependency: libcurl.so.3 for package: collectd
--> Processing Dependency: libpython2.4.so.1.0 for package: collectd
--> Processing Dependency: libidn.so.11 for package: collectd
---> Package collectd.x86_64 0:4.10.0-4.el5 set to be updated
--> Running transaction check
---> Package collectd.i386 0:4.10.0-4.el5 set to be updated
--> Processing Dependency: libpython2.4.so.1.0 for package: collectd
---> Package curl.i386 0:7.15.5-9.el5 set to be updated
---> Package libidn.i386 0:0.6.5-1.1 set to be updated
---> Package libxml2.i386 0:2.6.26-2.1.2.8 set to be updated
--> Finished Dependency Resolution
collectd-4.10.0-4.el5.i386 from epel has depsolving problems
--> Missing Dependency: libpython2.4.so.1.0 is needed by package collectd-4.10.0-4.el5.i386 (epel)
Error: Missing Dependency: libpython2.4.so.1.0 is needed by package collectd-4.10.0-4.el5.i386 (epel)
You could try using --skip-broken to work around the problem
You could try running: package-cleanup --problems
package-cleanup --dupes
rpm -Va --nofiles --nodigest
[root@vitlinpup001 templates]# find / -iname "libpython2.4.so.1.0" -type f
/usr/lib64/libpython2.4.so.1.0
[root@vitlinpup001 templates]# file /usr/lib64/libpython2.4.so.1.0
/usr/lib64/libpython2.4.so.1.0: ELF 64-bit LSB shared object, AMD x86-64, version 1 (SYSV), stripped
[root@vitlinpup001 templates]# ls -lah /usr/lib64/libpython2.4.so.1.0
-r-xr-xr-x 1 root root 1.2M Sep 3 2009 /usr/lib64/libpython2.4.so.1.0
[root@vitlinpup001 templates]# yum info python | grep installed
Repo : installed
I've tried to run package-cleanup --problems
, package-cleanup --dupes
and rpm -Va --nofiles --nodigest
.
This is a first timer for me regarding missing dependency, so I'm a little lost on how to proceed.
You're misreading the output. It's saying that the 32-bit library for Python is missing, which is correct. Try installing
collectd.x86_64
instead.another work around for this is to add the following line in /etc/yum.conf
exclude=collectd.i386
This seems to be a problem with collectd on EPEL. The x86_64 repository seems to have both 64 bit and 32bit packages. Which is clearly broken.
Adding exclude=collectd.i386 to /etc/yum.conf as mentioned by kisoku is probably the best solution until EPEL is fixed, if you want yum install collectd to "just work"
You can tell Yum to prefer packages that match the machine architecture if more than one is available. Set the following in
yum.conf
:This replaces the previous
yum-basearchonly
plugin as core functionality. It is the default behaviour in Fedora 9 and RHEL 6 onwards.