[BL] /lib/cpp error compiling in BL2 with libc-2.2.5 upgrade
sindi keesan
keesan at sdf.lonestar.org
Fri Jan 6 11:35:53 EST 2006
On Fri, 6 Jan 2006, sindi keesan wrote:
> On Thu, 5 Jan 2006, David Moberg wrote:
>
>> sindi keesan wrote:
>>>
>>> I was able to compile netpbm but all the programs segfault.
>>>
>>>>
>>>> The programs that I compiled all produced only Segmentation fault, and ldd
>>>> reveals that they need ld-linux 2, libm 6, libc 6 and also libc 5.
>>>>
>>>
>>> David's libc5 version does not require ld-linux,
>>
>> Really?? IIRC the libc5 ldd does not display ld-linux even if the target
>> program depends on ld-linux.
>
> I used BL2 ldd to check both your netpbm programs and mine.
> For mine, ldd lists ld-linux, for yours, it does not.
ldd libc.so.5 - statically compiled, does not need ld-linux, which I
probably did not need to even include in my netpbmt-for-bl2 package.
ls -l libc.so.5 580K
ldd libc.so.6 - needs ld-linux.so.2
ls -l libc.so.6 1.2MB (This is the Slackware 8.1 glibc 2.2.5)
No wonder BL3 switched back to libc5.
>
>>
>>> and his programs are about three times the size of mine. Did David
>>> compile statically for ld-linux?
ld-linux is included in the static libc5, but not in libc6
>>
>>> I tried renaming libc.so.5 to libc.so.5.bak and ldd said the programs
>>> still required it, but could not find it. I removed the 'bak' again.
>>
>> Your compiling system is somewhat broken. Did you install libc5
>> development libraries? Try renaming anything that is named .so.5
>> also.
>
> I probably installed the whole libc5 package from SW71, libc5.tgz
> which installed /usr/i386-slackware-linux-gnulibc1/lib/
> with two symlinks to /lib/ld-linux.so.1 and libdl.so.1
> and one directory. Should I delete these?
The above directory came with SW71 egcs and binutils. I deleted them
both, and gmake, since I now have SW81 gcc, binutils, and make. That did
not fix the problem.
>
>
> I will look at what is in the .tgz. To run your netpbm do I need
> anything other than libc.so.5 and libnetpbm and libtiff (for libc5)?
>
> I have libm.so.5 but ldd does not indicate that it is a dependency, just
> libc.so.5.
I fixed the problem by looking in my netpbm packages and renaming
/lib/libc.so.5 and libm.so.5 and ld-linux.so.1 (and the files underlying
these symlinks) and
/usr/local/lib/libnetpm* (I had also put it in /lib for no good reason)
/usr/local/lib/libtiff*
The libpng file for libc5 had already been overwritten by the libc6 one.
make -k (for --keep-going) produced files dependent on
libc6 libm6 ld-linux2 libnetpbm and some on libjpeg libpng
More information about the BasLinux
mailing list