Symptoms

After running OA 5.5 update precheck following error appears in /var/log/precheck-report-<report_date>.log:

Following hosts have libstdc++ or libgcc rpms older than 4.1.2-54. POA 5.5 will not work in such environments.
    branding.provider.tld (5): libgcc version is 52, libstdc++ version is 52

Cause

Shared container or hardware node based on CentOS/RHEL 5 installed libgcc or libstdc++ is old (version < 4.1.2-54)

Container:

[root@vz47 ~]# vzpkg list -O 1002
centos-5-x86_642012-01-11 18:52:30
[root@vz47 ~]# vzctl exec 1002 rpm -qa |egrep 'libgcc|libstdc++'
libstdc++-4.1.2-51.el5
libstdc++-4.1.2-51.el5
libgcc-4.1.2-51.el5
libgcc-4.1.2-51.el5

Where 1002 is example of target container ID.

Hardware node:

[root@branding ~]# rpm -qa |egrep 'libgcc|libstdc++'
libstdc++-4.1.2-52.el5
libstdc++-4.1.2-52.el5
libgcc-4.1.2-52.el5
libgcc-4.1.2-52.el5

Resolution

RPMs libgcc and libstdc++ should be updated on these hosts.

Container:

vzpkg install  1002 -p libgcc libstdc++

If the package is already installed, use the following instead:

vzpkg update 1002 -p libgcc libstdc++

In some cases the vzpkg update command would be not able to find required version for package. Because it checks on http://vault.centos.org/ for an older version, while it should check versions in all folders. Please correct this by adding list of repos by commands:

echo http://vault.centos.org/5.{0,1,2,3,4,5,6,7,8,9}/{os,updates}/x86_64 | tr ' ' '\n' >> /vz/template/centos/5/x86_64/config/os/default/repositories
echo http://vault.centos.org/5.{0,1,2,3,4,5,6,7,8,9}/{os,updates}/i386 | tr ' ' '\n' >> /vz/template/centos/5/x86/config/os/default/repositories

And update metadata:

vzpkg update metadata centos-5-x86_64 -r

Hardware node:

yum install -y libgcc libstdc++

Please note that is necessary to install and configure yum on every linux shared node.

  • In order to update packages inside VM, yum utility will be used to update installed packages. If any dependency issue will arise during updating liggcc and libstdc++ packages, it is required to remove the package which have dependency issues and update the liggcc and libstdc++ packages and re-install the previously removed packages.

Internal content