[CentOS] glibc free error rebuilding iproute-2.6.9-3.EL4.3.centos4.src.rpm

Tue Oct 31 23:09:36 UTC 2006
Adam Monsen <haircut at gmail.com>

I'm getting a strange error while rebuilding
iproute-2.6.9-3.EL4.3.centos4.src.rpm ...

rpmbuild --rebuild iproute-2.6.9-3.EL4.3.centos4.src.rpm
...
./normal >normal.dist
*** glibc detected *** free(): invalid next size (normal): 0x08491050 ***
/bin/sh: line 1:  5236 Aborted                 ./normal >normal.dist
make[1]: *** [normal.dist] Error 134
...
+ install -m 644 tc/normal.dist tc/pareto.dist tc/paretonormal.dist
/data/tmp/cd654c/rpm/tmp/iproute-2.6.9-root/usr/lib/tc
install: cannot stat `tc/pareto.dist': No such file or directory
install: cannot stat `tc/paretonormal.dist': No such file or directory
error: Bad exit status from /data/tmp/cd654c/rpm/tmp/rpm-tmp.36741 (%install)
...
etc.


Any ideas as to what might be causing this heap corruption?

I'm using a pretty much stock CentOS 4.3 box to perform the rpm rebuild.


Running the "normal" binary under gdb doesn't provide much additional info:

...
*** glibc detected *** free(): invalid next size (normal): 0x08390050 ***

Program received signal SIGABRT, Aborted.
0x00958bf1 in kill () from /lib/i686/libc.so.6

(gdb) bt
#0  0x00958bf1 in kill () from /lib/i686/libc.so.6
#1  0x00958845 in raise () from /lib/i686/libc.so.6
#2  0x00959ea0 in abort () from /lib/i686/libc.so.6
#3  0x0098c52e in __libc_message () from /lib/i686/libc.so.6
#4  0x00992b7f in _int_free () from /lib/i686/libc.so.6
#5  0x00992f26 in free () from /lib/i686/libc.so.6
#6  0x080486a8 in main (argc=1, argv=0xbff52e44) at normal.c:54
(gdb) l
54              free(table);
55              return 0;
56      }


-- 
Adam Monsen