YUM complains about PyYAML and libyaml on CentOS 5.8

Every time I try to update #sudo yum I get warnings that PyYAML-3.08-4.el5.x86_64 is missing a dependency, libyaml-0.so.1 () (64 bit).

So I did some checks and it seems like libyaml is indeed installed, so I am wondering what is wrong with my PyYAML and libyaml installation. libyaml was automatically pulled by PyYAML, which makes me think that something strange is happening with the repo. The exit from YUM looks like this:

[root@am-web-1 ~]# yum update
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirror01.th.ifl.net
 * epel: mirror01.th.ifl.net
 * extras: mirror01.th.ifl.net
 * rpmforge: fr2.rpmfind.net
 * updates: mirror01.th.ifl.net
Excluding Packages from CentOS-5 - Base
Finished
Reducing CentOS-5 Testing to included packages only
Finished
Excluding Packages from CentOS-5 - Updates
Finished
Setting up Update Process
Resolving Dependencies
--> Running transaction check
---> Package git.x86_64 0:1.7.10-1.el5.rf set to be updated
--> Processing Dependency: libyaml-0.so.1()(64bit) for package: PyYAML
---> Package libyaml.x86_64 0:0.1.4-1.el5.rf set to be updated
---> Package perl-Git.x86_64 0:1.7.10-1.el5.rf set to be updated
--> Finished Dependency Resolution
PyYAML-3.08-4.el5.x86_64 from installed has depsolving problems
  --> Missing Dependency: libyaml-0.so.1()(64bit) is needed by package PyYAML-3.08-4.el5.x86_64 (installed)
Error: Missing Dependency: libyaml-0.so.1()(64bit) is needed by package PyYAML-3.08-4.el5.x86_64 (installed)
 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

      

So we know we have a problem, so where is this libyaml?

[alexander@am-web-1 ~]$ yum whatprovides "*/libyaml-0.so.1"          
Loaded plugins: fastestmirror
Excluding Packages from CentOS-5 - Base
Finished
Reducing CentOS-5 Testing to included packages only
Finished
Excluding Packages from CentOS-5 - Updates
Finished
libyaml-0.1.2-3.el5.i386 : YAML 1.1 parser and emitter written in C
Repo        : epel
Matched from:
Filename    : /usr/lib/libyaml-0.so.1

libyaml-0.1.2-3.el5.x86_64 : YAML 1.1 parser and emitter written in C
Repo        : epel
Matched from:
Filename    : /usr/lib64/libyaml-0.so.1

libyaml-0.1.2-3.el5.x86_64 : YAML 1.1 parser and emitter written in C
Repo        : installed
Matched from:
Filename    : /usr/lib64/libyaml-0.so.1

libyaml-0.1.2-3.el5.i386 : YAML 1.1 parser and emitter written in C
Repo        : installed
Matched from:
Filename    : /usr/lib/libyaml-0.so.1

      

So, does the library exist?

[alexander@am-web-1 ~]$ ls /usr/lib64/libyaml-0.so.1*
/usr/lib64/libyaml-0.so.1  /usr/lib64/libyaml-0.so.1.1.0

      

64 bit, does 32 bit do one?

[alexander@am-web-1 ~]$ ls /usr/lib/libyaml-0.so.1*
/usr/lib/libyaml-0.so.1  /usr/lib/libyaml-0.so.1.1.0

      

They both exist, so what's the problem?!?

+3


source to share


2 answers


This is more of a ServerFault question , but I've seen the same issue with updating / installing Cobbler. This is a problem with multiple repos you have included at this point. Generally, it is bad practice to have both REPOs always run at the same time. There is a small conflict between the package libyaml

from RPMForge and the packages provided through EPEL .



To fix, uninstall the RPMForge package with yum erase libyaml

, then continue with the upgrade yum update --disablerepo=rpmforge

. You can also take the extra step by excluding that particular package from your RPMForge repo config file ...

+5


source


inspired by @ewwhite's answer I found out that this works well



yum erase libyaml
yum install --disablerepo=rpmforge libyaml-devel

      

+1


source







All Articles