Bug #32012 MySQL Client: libmtmalloc.so.1: DF_1_NOOPEN tagged object may not be dlopen()'ed
Submitted: 31 Oct 2007 23:02 Modified: 22 Nov 2007 23:04
Reporter: Tracy Brown Email Updates:
Status: Duplicate Impact on me:
None 
Category:MySQL Server Severity:S2 (Serious)
Version:mysql-5.1.22-rc OS:Solaris (version 10)
Assigned to: CPU Architecture:Any

[31 Oct 2007 23:02] Tracy Brown
Description:
Ref bug: #18322 -- appears to have been reintroduced in some fashion or another.

Apache 2.2.6 is attempting to load a custom apache module that is dynamically linked to libmysqlclient.so. Apache reports the following on startup:

/usr/local/apache-2.2.6/conf/httpd.conf: Cannot load /usr/local/mysql/lib/mysql/libmysqlclient.so into server: ld.so.1: httpd: fatal: libmtmalloc.so.1: DF_1_NOOPEN tagged object may not be dlopen()'ed

From config.log (using GNU Autoconf 2.59):

## --------- ##
## Platform. ##
## --------- ##

hostname = nickle
uname -m = sun4u
uname -r = 5.10
uname -s = SunOS
uname -v = Generic_125100-10

/usr/bin/uname -p = sparc
/bin/uname -X     = System = SunOS

<snip ...>

configure:23984: checking for malloc in -lmtmalloc
configure:24014: /opt/studio12/SUNWspro/bin/cc -o conftest -O3 -I/usr/local/ssl/include -I/usr/local/BerkeleyDB.3.3/include -I/usr/local/apache/include -I/usr/local/mysql/include -I/usr/local/include     conftest.c -lmtmalloc  -lnsl -lm  >&5

How to repeat:
Similar to bug #18322 - unpack and compile from source with specified tags. Inside the Apache httpd.conf configuration file issue the directive: 

LoadFile /usr/local/mysql/lib/mysql/libmysqlclient.so

Where the path is to an installed instance of MySQL. Apache will report something similar to the following:

httpd: Syntax error on line 57 of /usr/local/apache-2.2.6/conf/httpd.conf: Cannot load /usr/local/mysql/lib/mysql/libmysqlclient.so into server: ld.so.1: httpd: fatal: libmtmalloc.so.1: DF_1_NOOPEN tagged object may not be dlopen()'ed

Suggested fix:
Do not explicitly link to libmtmalloc.
[31 Oct 2007 23:08] Tracy Brown
The following config tags were used:
--prefix=/usr/local/mysql-5.1.22-rc 
--with-mysqld-libs 
--with-server-suffix 
--enable-assembler 
--with-charset=utf8 
--with-mysql-user=mysql 
--with-plugins=max-no-ndb 
--with-embedded-server 
--with-mysqlmanager 
--with-zlib-dir=bundled 
--without-plugin-ndbcluster
[22 Nov 2007 23:04] Sveta Smirnova
Thank you for the report.

Marked as duplicate of bug #18322 which is reopened again.