Zlib version in FreeBSD - 3 releases behind?
Kris Sridhar
kris.universe at gmail.com
Fri Mar 8 16:27:51 UTC 2013
Gentlemen,
The library (/lib/libz.so.6) in FreeBSD 9.1R does seem to have Zlib 1.2.4 based on the complaints from the following at least:
libarchive.so.*
libssh.so.*
grep
gzip
I've provided objdump -p output from my machine:
----------------------------------------------------------------
fBSD9# objdump -p libz.so.6
libz.so.6: file format elf32-i386-freebsd
Program Header:
LOAD off 0x00000000 vaddr 0x00000000 paddr 0x00000000 align 2**12
filesz 0x000124c4 memsz 0x000124c4 flags r-x
LOAD off 0x000124c4 vaddr 0x000134c4 paddr 0x000134c4 align 2**12
filesz 0x000002e0 memsz 0x000002e4 flags rw-
DYNAMIC off 0x00012588 vaddr 0x00013588 paddr 0x00013588 align 2**2
filesz 0x000000d8 memsz 0x000000d8 flags rw-
STACK off 0x00000000 vaddr 0x00000000 paddr 0x00000000 align 2**2
filesz 0x00000000 memsz 0x00000000 flags rw-
Dynamic Section:
NEEDED libc.so.7
SONAME libz.so.6
INIT 0x13f0
FINI 0xe1b4
HASH 0xb4
STRTAB 0xaec
SYMTAB 0x3fc
STRSZ 0x49f
SYMENT 0x10
PLTGOT 0x1367c
PLTRELSZ 0x1b0
PLTREL 0x11
JMPREL 0x1240
REL 0x1130
RELSZ 0x110
RELENT 0x8
VERDEF 0x106c
VERDEFNUM 0x5
VERNEED 0x1110
VERNEEDNUM 0x1
VERSYM 0xf8c
RELCOUNT 0x1e
Version definitions:
1 0x01 0x09d5f4e6 libz.so.6
2 0x00 0x07e5cf30 ZLIB_1.2.4.0
3 0x00 0x053ecdd0 ZLIBprivate_1.0
ZLIB_1.2.4.0
4 0x00 0x07e5c230 ZLIB_1.2.7.0
ZLIB_1.2.4.0
5 0x00 0x077a28b2 FBSD_1.2
ZLIB_1.2.4.0
Version References:
required from libc.so.7:
0x077a28b0 0x00 06 FBSD_1.0
fBSD9# uname -r
9.1-RELEASE
----------------------------------------------------------------
If Zlib 1.2.7 were installed independently from tar.gz downloaded from zlib.net site, it produces,
/usr/local/lib/libz.so.1.2.7 which is different from /lib/libz.so.6 of course.
But this installs a /usr/local/include/zlib.h that is identical to /usr/src/lib/libz/zlib.h as well as /usr/include/zlib.h
The complaint mentioned before from dependent objects like libarchive that the "/lib/libz.so.6 containing ZLIB_1_2_4 is missing" results if one removes /lib/libz.so.6 and replaces with a symlink to the new version like:
/lib/libz.so.6 --> /usr/local/lib/libz.so.1.2.7
Given the version definitions from the objdump -p of the original /lib/libz.so.6 that was installed as part of a fresh, clean install of FreeBSD 9.1R, as provided above, any thoughts on the Zlib version actually baked into the release please?
Thanks.
Kris
On Mar 6, 2013, at 5:27 PM, Giorgos Keramidas <keramida at FreeBSD.org> wrote:
> On 2013-03-06 08:06, Arthur Chance <freebsd at qeng-ho.org> wrote:
>> On 03/05/13 16:12, Giorgos Keramidas wrote:
>>> On 2013-03-04 07:28, KrisUniverse <kris.universe at gmail.com> wrote:
>>>> The Zlib baked into FreeBSD is Zlib 1.2.4 even on 9.1R.
>>>>
>>>> However, Zlib has gone to 1.2.7 sometime ago after stepping through
>>>> 1.2.5, 1.2.6 and 1.2.7 with bug fixes.
>>>>
>>>> Is there any reason for not using Zlib 1.2.7?
>>>
>>> I don't have a 9.1-RELEASE system nearby, but I think zlib 1.2.7 _should_
>>> already be there... Are you sure it's still an old version?
>>
>> On my machine:
>>
>> # uname -r
>> 9.1-RELEASE
>>
>> [It's actually -p1 but I've not bothered replacing the kernel as the
>> problems were in user space.]
>>
>> # grep 'define ZLIB_VERSION' /usr/src/lib/libz/zlib.h
>> #define ZLIB_VERSION "1.2.7"
>
> That's what I'd expect. Thanks :)
>
More information about the freebsd-questions
mailing list