Bug #97710 compilation error
Submitted: 20 Nov 2019 13:06 Modified: 22 Jan 2020 15:14
Reporter: Filip Janus Email Updates:
Status: Closed Impact on me:
None 
Category:Connector / ODBC Severity:S3 (Non-critical)
Version:8.0.18 OS:Fedora (f29-f32)
Assigned to: CPU Architecture:Any
Tags: compilation error, missing includes

[20 Nov 2019 13:06] Filip Janus
Description:
Hello, 
as in previous version, there are few errors during compilation, mostly missing includes and missing definitions.
I am attaching patch,maybe it will help.

Thanks
Filip Januš

How to repeat:
error occur after start building
[20 Nov 2019 13:07] Filip Janus
patch file

Attachment: mysql-connector-odbc-8.0.18.patch (text/x-patch), 5.75 KiB.

[21 Nov 2019 8:18] Bogdan Degtyariov
Hi Filip,

Thank you for your report and for the proposed patch.
Unfortunately, in many places we cannot accept the changes.

Especially the ones made in the unit tests like this one:

-    (SQLPOINTER)SQL_OV_ODBC3_80, 0));
+    (SQLPOINTER)SQL_OV_ODBC3, 0));

if using SQL_OV_ODBC3_80 causes compilation error it means that UnixODBC (or another ODBC Driver Manager) is an old an unsupported version. Same goes for SQL_PARAM_INPUT_OUTPUT_STREAM.

The ODBC 3.80 functionality and streaming input-output parameters are an important part of ODBC driver and they have to be tested. If the driver manager does not support them the driver cannot work.

Anyway, the main problem as we see it is use of the dynamic libmysqlclient library instead of the static.
Changes in libmysqlclient introduced by MySQL 8.0.19 require solving some compiling and linking problems.
Our ODBC developers are working on it at the moment.
[22 Jan 2020 15:14] Terje Røsten
This bug was resolved by:
 https://github.com/mysql/mysql-connector-odbc/commit/5826bf6596bf61c985bd3ebf964c6023637ea...