I ran into exactly the same test case failures recently with RHEL 6 (2.6.32-71.el6.x86_64).
So perhaps this is related to newer kernel or compilers? I'm using the RH RPM gcc distro (gcc version 4.4.4 20100726 (Red Hat 4.4.4-13) ) and kernel 2.6.32-71.
My error is:
...
t/op/sprintf..............................FAILED--no leader found
t/op/sprintf2.............................FAILED--expected 263 tests,
+saw 3
...
Failed 2 test scripts out of 931, 99.79% okay.
In my case, I utilized a standard RedHat patch from their Perl 5.8.8 devel RPM to address the asm/page.h issue. As per RHN 2006 change log, this "stop IPC/SysV.c including <asm/page.h> for getpagesize(), which is now declared by including <unistd.h>".
The patch is (perl-5.8.8-no_asm_page_h.patch):
--- perl-5.8.8/ext/IPC/SysV/SysV.xs.no_asm_page_h 2001-06-30 14:46:
+07.000000000 -0400
+++ perl-5.8.8/ext/IPC/SysV/SysV.xs 2006-06-02 17:37:22.000000000 -
+0400
@@ -3,9 +3,6 @@
#include "XSUB.h"
#include <sys/types.h>
-#ifdef __linux__
-# include <asm/page.h>
-#endif
#if defined(HAS_MSG) || defined(HAS_SEM) || defined(HAS_SHM)
#ifndef HAS_SEM
# include <sys/ipc.h>
On the original topic of downgrading Perl, specific to RHEL 6, I had to address new 64-bit default system library locations which are lib64 vs. lib. Specifically, I added this argument to Configure:
sh ./Configure ... -Dlibpth='/usr/local/lib64 /lib64 /usr/lib64'
This path problem is discussed in this thread:
http://osdir.com/ml/lang.perl.perl5.porters/2006-01/msg01037.html
Anyway, any insight on the failed test issue would be much appreciated.