Centos – Elastix Upgrade fails CentOS yum missing dependency with libwat, libgsmat, and libss7

centoselastixyum

I upgraded a year old vanilla Elastix box using yum update and yum upgrade.

Almost 400 packages updated but a few of them failed, including asterisk. At present the switchboard is working but I can't apply updated configuration from the GUI. The error produced is

exit: 1
[FATAL] Unable to connect to Asterisk Manager from /var/lib/asterisk/bin/retrieve_conf, aborting

I researched various topics on how to get the Asterisk Management interface username and password synched, but to not avail. So now
I'm thinking that I can isolate the problem further if I can at least get YUM to complete as it should. The errors produced by YUM update are:

--> Finished Dependency Resolution
2009020507:asterisk-11.5.0-0.x86_64 from elastix-beta has depsolving problems
  --> Missing Dependency: libgsmat.so.2.0.7()(64bit) is needed by package 2009020507:asterisk-11.5.0-0.x86_64 (elastix-beta)
2009020507:asterisk-11.5.0-0.x86_64 from elastix-beta has depsolving problems
  --> Missing Dependency: libwat.so.1.0.24()(64bit) is needed by package 2009020507:asterisk-11.5.0-0.x86_64 (elastix-beta)
Error: Missing Dependency: libgsmat.so.2.0.7()(64bit) is needed by package 2009020507:asterisk-11.5.0-0.x86_64 (elastix-beta)
Error: Missing Dependency: libwat.so.1.0.24()(64bit) is needed by package 2009020507:asterisk-11.5.0-0.x86_64 (elastix-beta)
 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

I tried all the remedies mentioned, including --skip-broken, package-cleanup --problems, package-cleanup --dupes, and rpm -Va --nofiles --nodigest but none of this worked.

The only bit of research led me to this Elastix "bug" related to libss7 and spandsp which is resolved by saying that the EPEL package supplied version should be updated to the newest version. I don't know how to do this or if it would help.
http://bugs.elastix.org/view.php?id=1753

Our Elastix came with these repos:

[root@elastix3 yum.repos.d]# ls
CentOS-Base.repo       CentOS-Debuginfo.repo  commercial-addons.repo  epel-testing.repo
CentOS-Base.repo.back  CentOS-Media.repo      elastix.repo            pgdg-91-centos.repo
CentOS-Base.repo.test  CentOS-Vault.repo      epel.repo

When I do yum list I notice some oddities, for example it appears asterisk is installed and also present in another repo:

[root@elastix3 yum.repos.d]# yum list | grep asterisk
asterisk.x86_64                        2009020507:1.8.20.0-0      installed     
...
asterisk.x86_64                        2009020507:11.5.0-0        elastix-beta  

The output for libss7, libgsmat, and libwat:

[root@elastix3 yum.repos.d]# yum list | egrep -i "libss7|libgsmat|libwat"
libgsmat.x86_64                        2.0.3-0                    installed     
libwat.x86_64                          1.0.23-0                   installed     
libss7.i386                            1.0.1-3.el5                epel          
libss7.x86_64                          1.0.1-3.el5                epel          

So I'm guessing between all these repos I have a dependency mess and I don't know where to begin solving it.

The complete output from YUM is:

[root@elastix3 ~]# yum upgrade
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * addons: ftp.wa.co.za
 * base: ftp.wa.co.za
 * commercial-addons: elastix.kisiek.net
 * elastix-base: elastix.kisiek.net
 * elastix-beta: elastix.kisiek.net
 * elastix-extras: elastix.kisiek.net
 * epel: ftp.wa.co.za
 * extras: ftp.wa.co.za
 * updates: ftp.wa.co.za
Excluding Packages from CentOS-5 - Addons
Finished
Excluding Packages from CentOS-5 - Base
Finished
Excluding Packages from CentOS-5 - Extras
Finished
Excluding Packages from CentOS-5 - Updates
Finished
Setting up Upgrade Process
Resolving Dependencies
--> Running transaction check
---> Package asterisk.x86_64 2009020507:11.5.0-0 set to be updated
--> Processing Dependency: libwat.so.1.0.24()(64bit) for package: asterisk
--> Processing Dependency: libgsmat.so.2.0.7()(64bit) for package: asterisk
--> Processing Dependency: libss7.so.1()(64bit) for package: asterisk
---> Package asterisk-addons.x86_64 2009020507:11.5.0-0 set to be updated
---> Package asterisk-devel.x86_64 2009020507:11.5.0-0 set to be updated
---> Package asterisk-sounds-es.x86_64 2009020507:11.5.0-0 set to be updated
---> Package asterisk-sounds-fr.x86_64 2009020507:11.5.0-0 set to be updated
--> Running transaction check
---> Package asterisk.x86_64 2009020507:11.5.0-0 set to be updated
--> Processing Dependency: libwat.so.1.0.24()(64bit) for package: asterisk
--> Processing Dependency: libgsmat.so.2.0.7()(64bit) for package: asterisk
---> Package libss7.x86_64 0:1.0.1-3.el5 set to be updated
--> Finished Dependency Resolution
2009020507:asterisk-11.5.0-0.x86_64 from elastix-beta has depsolving problems
  --> Missing Dependency: libgsmat.so.2.0.7()(64bit) is needed by package 2009020507:asterisk-11.5.0-0.x86_64 (elastix-beta)
2009020507:asterisk-11.5.0-0.x86_64 from elastix-beta has depsolving problems
  --> Missing Dependency: libwat.so.1.0.24()(64bit) is needed by package 2009020507:asterisk-11.5.0-0.x86_64 (elastix-beta)
Error: Missing Dependency: libgsmat.so.2.0.7()(64bit) is needed by package 2009020507:asterisk-11.5.0-0.x86_64 (elastix-beta)
Error: Missing Dependency: libwat.so.1.0.24()(64bit) is needed by package 2009020507:asterisk-11.5.0-0.x86_64 (elastix-beta)
 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

Please assist! Although there is a workaround to apply the updated configuration from the command line I would really know that I've got a perfectly updated system.

Best Answer

EPEL points to an older version of libss7. Update your EPEL:

rpm -ivh http://www.mirrorservice.org/sites/dl.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm