bin/141034: libz in base system does not use symbol versioning

Arjan van Leeuwen freebsd-maintainer at
Mon Nov 30 19:10:01 UTC 2009

>Number:         141034
>Category:       bin
>Synopsis:       libz in base system does not use symbol versioning
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-bugs
>State:          open
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Mon Nov 30 19:10:00 UTC 2009
>Originator:     Arjan van Leeuwen
>Release:        8.0-RELEASE
Opera Software ASA
Several libraries in the FreeBSD base system now use symbol versioning. This is great for distributors of binary software packages, such as Opera Software, since it allows us to distribute a binary that can work on several versions of FreeBSD, eliminating some of the cost associated with creating separate builds.

libz, a library that is often used but whose symbols seldom change, does not support symbol versioning on FreeBSD. When FreeBSD 8 was released, the version of this library was bumped, even though the symbols did not change.

This means that to provide our software to users of both FreeBSD 7 and FreeBSD 8, we have to choose between having an extra build to generate and test, or linking zlib statically into our software. We chose the second option, but this of course unnecessarily increases the size of our binary.

Please turn on symbol versioning for libz.
Link an application against libz and upgrade FreeBSD to the next major version.
Turn on symbol versioning for libz.


More information about the freebsd-bugs mailing list