Zlib version in FreeBSD - 3 releases behind?
Arthur Chance
freebsd at qeng-ho.org
Fri Mar 8 08:49:14 UTC 2013
On 03/07/13 19:53, Kris Sridhar wrote:
> 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
I note that /usr/src/lib/libz/ChangeLog starts
ChangeLog file for zlib
Changes in 1.2.7 (2 May 2012)
and the Symbol.map file has four sections, two of which are labelled
ZLIB_1.2.7.0 and ZLIB_1.2.4.0.
This is getting beyond my experience as I'm very rusty on library
handling tools, a core developer is what you need. However, a wild guess
would be that it supports (or is intended to support) both 1.2.4 and
1.2.7 features.
More information about the freebsd-questions
mailing list