On 05/17/2013 12:29 PM, Reindl Harald wrote:
Am 17.05.2013 12:05, schrieb Sebastien FLAESCH:
Beside the Oracle skills debate and the stupid mistakes with soname
changes between 5.5.8 and 5.5.10 or 5.6.x, (imagine all of this did
not happen):
I have a VERY simple question that needs a VERY CLEAR answer:
In our distribution packages (for different platforms! not only Linux),
I need to provide mysql client binaries for different versions of mysql
client environments:
4.1.x
5.1.x
5.4.x
5.5.x
5.6.x
How many binaries do I have to provide to support all these versions?
We compile with headers of a given version and link dynamically with
-lmysqlclient of course
4.1 and 5.6 should be enough if the topic is only
to connect to servers from 4.1 to 5.6, a 5.6 client
will happily connct to a>= 5.1 server
4.1 has a older protocol version and is AFAIk not supported
by recent client libraries, at least recent PHP versions can
not connect to servers older than 5.x
I see want you mean regarding C/S protocols but understand that:
1- we do not ship the MySQL client library,
2- it's not sure that a 5.6 (or 4.1) libmysqlclient is installed.
Typically, customers will install a MySQL 5.x.y server WITH the
corresponding 5.x.y MySQL client library (usually on the same
machine), then they install our software (it's a dev tool).
So you can have following scenario:
A- MySQL Version 5.4.x with:
libmysqlclient.so.16
B- Our product, with a db interface module for MySQL.
If we use MySQL 5.6.x to build it, it will be linked to:
libmysqlclient.so.18
I suppose linking our modules to libmysqlclient.so without a lib
version name is not good practice... ;-)
Until today, if we want to have a common and simple rule for all
plaforms, my instinct is that we better provide a binary compiled
and linked with each major version of the MySQL we want to support.
This implies MySQL version specific modules in our package, but
guaranties 100% compatibility with the different MySQL client libs
that can be in the field.
Am I wrong?
Seb
--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe: http://lists.mysql.com/mysql