Re: [xml] question on versions




On 2012-03-15, at 23:41, Daniel Veillard <veillard redhat com> wrote:

On Thu, Mar 15, 2012 at 05:48:01PM -0700, Joshua Alexander wrote:
Hi folks,

I recently built libxml2 2.7.8 on OS X and now apache won't start saying
"libphp5.so requires version 10.0.0 or later, but libxml2.2.dylib provides
version 9.0.0"

That doesn't make sense to me, so I'm curious, is what apache's saying
accurate... or what "version" is libxml2 2.7.8 supposed to provide?

 Smells like Apple builds incremented the dylib and you need to mimic
that on your own builds (but I have no idea how !)

The increase in library version number from 9 to 10 happened when libxml2's version number went from v2.6.32 
to v2.7.0.  The library version number is derived from the -version-info argument passed to libtool, computed 
in configure as:

LIBXML_VERSION_INFO=`expr $LIBXML_MAJOR_VERSION + 
$LIBXML_MINOR_VERSION`:$LIBXML_MICRO_VERSION:$LIBXML_MINOR_VERSION

For instance, libxml2 2.6.32 passed -version-info 8:32:6 to libtool.  libxml2 2.7.8 passes -version-info 
9:8:7.  From my reading of <http://sourceware.org/autobook/autobook/autobook_91.html> the version info that 
libxml2 is passing doesn't really correspond to how it is intended to be used. What's worse, though, is that 
the manner in which libtool maps the version information on to the Mach-O concepts of library versioning 
doesn't really agree with the autobook explanation of library versioning either (e.g., the "age" isn't taken 
in to consideration when generating the compatibility version). This means that even if libxml2 were setting 
-version-info correctly that the compatibility version of the library on OS X would change unexpectedly when 
the "current" field of the libtool version info was incremented.

In other words, the entire situation is gross.

- Mark




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]