Bug #68765 Can't load '..../mysql.so' for module DBD::mysql
Submitted: 25 Mar 2013 16:07 Modified: 6 Aug 2015 13:00
Reporter: Norbert Weuster Email Updates:
Status: Won't fix Impact on me:
None 
Category:Connector / C Severity:S2 (Serious)
Version:6.0.2 OS:IBM AIX
Assigned to: CPU Architecture:Any
Tags: AIX, C, connector, decimal128ToNumber, mysql.so

[25 Mar 2013 16:07] Norbert Weuster
Description:
The 32-bit precompiled MySQL Connector/C for is unusable. 
Obviously the libary is not linked correctly?

I only tested on a system with 7100-02-02-1316, but I guess it is related to all AIX versions.

A Perl script with the lines 
  use DBI;
  use DBD::mysql;
fails with the error message:

Can't load '/usr/opt/perl5/lib/site_perl/5.10.1/aix-thread-multi/auto/DBD/mysql/mysql.so' for module DBD::mysql: rtld: 0712-001 Symbol decimal128ToNumber was referenced
      from module /usr/local/lib/libmysql.so(), but a runtime definition
      of the symbol was not found.
rtld: 0712-001 Symbol decContextDefault was referenced
      from module /usr/local/lib/libmysql.so(), but a runtime definition
      of the symbol was not found.
rtld: 0712-001 Symbol decNumberToIntegralValue was referenced
      from module /usr/local/lib/libmysql.so(), but a runtime definition
      of the symbol was not found.
rtld: 0712-001 Symbol decimal128FromNumber was referenced
      from module /usr/local/lib/libmysql.so(), but a runtime definition
      of the symbol was not found.
rtld: 0712-001 Symbol decimal32ToNumber was referenced
      from module /usr/local/lib/libmysql.so(), but a runtime definition
      of the symbol was not found.
rtld: 0712-001 Symbol decimal64FromNumber was referenced
      from module /usr/local/lib/libmysql.so(), but a runtime definition
      of the symbol was not found.
rtld: 0712-001 Symbol decimal32FromNumber was referenced
      from module /usr/local/lib/libmysql.so(), but a runtime definition
      of the symbol was not found.
        0509-021 Additional errors occurred but are not reported. at /usr/opt/perl5/lib/5.10.1/aix-thread-multi/DynaLoader.pm line 200.
 at /tmp/t.pl line 9
Compilation failed in require at /tmp/t.pl line 9.
BEGIN failed--compilation aborted at /tmp/t.pl line 9.

After I compiled the source package mysql-connector-c-6.0.2.tar.gz using
'cmake -G "Unix Makefiles" && make install'
using the IBM XL C Compiler 12.1. I could compile DBD-mysql-4.022
and my sample script worked.

How to repeat:
Install mysql-connector-c-6.0.2-aix5.3-powerpc-32bit.tar.gz and 
compile and install DBD-mysql-4.022 and 
use a perl script with the lines
  use DBI;
  use DBD::mysql;

Suggested fix:
Recompile mysql-connector-c-6.0.2-aix5.3-powerpc-32bit.tar.gz
[6 Aug 2015 13:00] Rafal Somla
This is 2 years old bug, but for the record, our current GA version of Connector/C is 6.1. With 6.1 we decided to drop direct support for IBM AIX platform. To use Connector/C 6.1 on that platform one has to build it from sources himself.