#2691: Zlib 1.2.5 issues
---------------------+------------------------------------------------------
Reporter: willimm | Owner: lfs-b...@…
Type: defect | Status: new
Priority: normal | Milestone: 6.7
Component: Book | Version: SVN
Severity: normal | Keywords:
---------------------+------------------------------------------------------
Comment(by gespinasse):
That's wrong to fix the static compilation when you want perl linked to
shared lib, no?
Compiler automaticly take the static libz.a when the shared libz.so is not
found or the link to libz.so.1.2.5 is bad.
At least I saw that with 5.10.1 when I made a mistake on the shared lib
name.
I haven't try with perl-5.12 and I am compiling 32-bits only and with
gcc-4.4.4.
I have compiled ipcop entire package list with the static zlib.a removed,
so I am sure the static libz.a was not include by a bug/mistake into
perl.
I look at my perl compilation script and at the sed on perl.
I am doing
{{{
-e "s|LIB\s*= ./zlib-src|LIB = /lib|"
}}}
when LFS is using
{{{
-e "s|LIB\s*= ./zlib-src|LIB = /usr/lib|"
}}}
I understand I should be be wrong setting LIB to /lib but that work.
Looking at the compilation log for -lz on LFS jhalf 094-perl build, I see
{{{
LD_RUN_PATH="/usr/lib" cc -shared -O2 -L/usr/local/lib -fstack-protector
Zlib.o -o ../../lib/auto/Compress/Raw/Zlib/Zlib.so \
-L/usr/lib -lz \
}}}
Compiler should find libz.{a,so} in /usr/lib and select to use libz.so
What happen if you change the perl sed to set
{{{
LIB = /lib
}}}
Check the shared lib is used with
{{{
[chroot-i486] root:/$ find <your path>/usr/lib/perl5 -name Zlib.so -exec
ldd {} \;
linux-gate.so.1 => (0xb7f2f000)
libz.so.1 => /lib/libz.so.1 (0xb7f0f000)
libc.so.6 => /lib/libc.so.6 (0xb7dac000)
/lib/ld-linux.so.2 (0xb7f30000)
}}}
--
Ticket URL: <http://wiki.linuxfromscratch.org/lfs/ticket/2691#comment:4>
LFS Trac <http://wiki.linuxfromscratch.org/lfs/>
Linux From Scratch: Your Distro, Your Rules.
--
http://linuxfromscratch.org/mailman/listinfo/lfs-book
FAQ: http://www.linuxfromscratch.org/lfs/faq.html
Unsubscribe: See the above information page