MySQL 5.0.x binary package has no shared library support
Posted in: MySQL
After spending more time helping Andy Vestergård to get everything working on his new Intel Mac mini we ran into problems compiling Postfix with MySQL support together with TLS/SSL support. In the linking phase of compiling Postfix we got many errors warning us about multiple definitions of symbols being used like:
/usr/bin/ld: multiple definitions of symbol _SSL_CTX_set_timeout /usr/lib/libssl.0.9.7.dylib(ssl_sess.o) definition of _SSL_CTX_set_timeout /usr/local/mysql/lib/libmysqlclient.a(ssl.o) definition of _SSL_CTX_set_timeout in section (__TEXT,__text)
It took me quite some time to locate the origin of this problem and ‘m sad to say that the cause lies with MySQL. In the lib directory of the MySQL installation there are no more shared libraries only static ones. There is even a bug being reported about this problem back in 2005 and it still isn’t solved. The remark being put there is to compile it yourself if you need it. I looked at the 5.0.x packages they provided both for PPC and Intel and the error is still there.
I guess this means I have to write documentation on how to compile your own binary of MySQL. This will delay the v2 documentation for some time…