1

Monday 19th May 2008

Local Packages

Over the weekend I updated my build system to Fedora 9. This was one of the most painless updates I can recall having made, and everything worked from the buildsys perspective except for mock builds for Red Hat Linux 8 and Fedora 1 targets.

For Red Hat Linux 8, I got this somewhat unexpected error message:

ERROR: Command failed: 
 # /usr/bin/yum --installroot /var/lib/mock/pptps-redhat-8-i386/root/  install buildsys-build
glibc-common-2.3.2-4.80.8.i386 from updates-released has depsolving problems
  --> glibc-common conflicts with glibc
glibc-2.2.93-5.i386 from core has depsolving problems
  --> Missing Dependency: glibc-common = 2.2.93-5 is needed by package glibc-2.2.93-5.i386 (core)
glibc-debug-2.2.93-5.i686 from core has depsolving problems
  --> Missing Dependency: glibc-devel = 2.2.93-5 is needed by package glibc-debug-2.2.93-5.i686 (core)
Error: Missing Dependency: glibc-devel = 2.2.93-5 is needed by package glibc-debug-2.2.93-5.i686 (core)
Error: Missing Dependency: glibc-common = 2.2.93-5 is needed by package glibc-2.2.93-5.i386 (core)
Error: glibc-common conflicts with glibc

By pure guesswork I tried adding to the yum.conf for the configuration:

exclude=glibc.i386

and that did the trick.

For Fedora 1, all builds failed at the point where the first command run in the chroot (groupadd as it happens), though the root.log indicated that glibc's post-install scriptlet was the first problem:

...
DEBUG util.py:250:  Transaction Summary
DEBUG util.py:250:  =============================================================================
DEBUG util.py:250:  Install     86 Package(s)
DEBUG util.py:250:  Update       0 Package(s)
DEBUG util.py:250:  Remove       0 Package(s)
DEBUG util.py:250:  Total download size: 77 M
DEBUG util.py:250:  error: %post(glibc-2.3.2-101.4.2.legacy.i686) scriptlet failed, exit status 115
DEBUG util.py:250:  error: %post(bash-2.05b-34.i386) scriptlet failed, signal 11
DEBUG util.py:250:  error: %post(info-4.5-2.i386) scriptlet failed, signal 11
DEBUG util.py:250:  error: %post(sed-4.0.8-2.i386) scriptlet failed, signal 11
DEBUG util.py:250:  error: %post(grep-2.5.1-17.4.i386) scriptlet failed, signal 11
...

This was another manifestation of Bug #121351, which until now had only affected 32-bit host systems as far as mock was concerned. I suspect that the merge of the x86 and x86_64 trees in recent kernels is the reason why this has just cropped up, and the workaround is similar to that for 32-bit hosts. To fix it for the running kernel:

# sysctl -w abi.vsyscall32=0

For subsequent boots, add to /etc/sysctl.conf:

# FC1 glibc bug workaround (#121351)
abi.vsyscall32 = 0

Fedora Project

PPTP Client Project