Bug #30148 mysql_config returns wrong lib paths on os x
Submitted: 31 Jul 2007 13:31 Modified: 10 Jan 2008 12:48
Reporter: Matthew Lord Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Compiling Severity:S2 (Serious)
Version:5.1.20 OS:MacOS (x86)
Assigned to: Jonathan Perkin CPU Architecture:Any
Tags: dbd, mysql_config, os x

[31 Jul 2007 13:31] Matthew Lord
Description:
Several users and customers have encountered this when building DBD::MySQL.  mysql_config is giving the wrong library paths and thus when loading client
apps you get a runtime linking error:

 mysql_config
Usage: /usr/local/mysql/bin/mysql_config [OPTIONS]
Options:
        --cflags         [-I/usr/local/mysql/include -Os -arch i386 -fno-common]
        --include        [-I/usr/local/mysql/include]
        --libs           [-L/usr/local/mysql/lib/mysql -lmysqlclient -lz -lm]
        --libs_r         [-L/usr/local/mysql/lib/mysql -lmysqlclient_r -lz -lm]
        --socket         [/tmp/mysql.sock]
        --port           [3306]
        --version        [5.1.20-beta]
        --libmysqld-libs [-L/usr/local/mysql/lib/mysql -lmysqld -lz -lm]

Notice that it uses /usr/local/mysql/lib/mysql 

How to repeat:
Install 5.1.20-beta:
./bin/mysql_config

Suggested fix:
We should be listing /usr/local/mysql/lib
[31 Oct 2007 1:23] Kyle VanderBeek
Please note that this problem breaks the python bindings on Mac OS X.  The setup.py for MySQL-python depends on these values.

https://sourceforge.net/forum/forum.php?thread_id=1835239&forum_id=70461
http://forums.mysql.com/read.php?50,175059,180049#msg-180049
[7 Jan 2008 15:01] Jonathan Perkin
Hi Matthew,

I'm a little confused, as I cannot reproduce this.

$ uname -rs
Darwin 8.11.1
$ tar zxf mysql-5.1.20-beta-osx10.4-i686.tar.gz
$ ./mysql-5.1.20-beta-osx10.4-i686/bin/mysql_config 
Usage: ./mysql-5.1.20-beta-osx10.4-i686/bin/mysql_config [OPTIONS]
Options:
        --cflags         [-I/Users/jonathan/mysql-5.1.20-beta-osx10.4-i686/include -Os -arch i386 -fno-common]
        --include        [-I/Users/jonathan/mysql-5.1.20-beta-osx10.4-i686/include]
        --libs           [-L/Users/jonathan/mysql-5.1.20-beta-osx10.4-i686/lib -lmysqlclient -lz -lm]
        --libs_r         [-L/Users/jonathan/mysql-5.1.20-beta-osx10.4-i686/lib -lmysqlclient_r -lz -lm]
        --socket         [/tmp/mysql.sock]
        --port           [3306]
        --version        [5.1.20-beta]
        --libmysqld-libs [-L/Users/jonathan/mysql-5.1.20-beta-osx10.4-i686/lib -lmysqld -lz -lm]

and after installing the .dmg:

$  /usr/local/mysql/bin/mysql_config 
Usage: /usr/local/mysql/bin/mysql_config [OPTIONS]
Options:
        --cflags         [-I/usr/local/mysql/include -Os -arch i386 -fno-common]
        --include        [-I/usr/local/mysql/include]
        --libs           [-L/usr/local/mysql/lib -lmysqlclient -lz -lm]
        --libs_r         [-L/usr/local/mysql/lib -lmysqlclient_r -lz -lm]
        --socket         [/tmp/mysql.sock]
        --port           [3306]
        --version        [5.1.20-beta]
        --libmysqld-libs [-L/usr/local/mysql/lib -lmysqld -lz -lm]

The output is the same for 5.1.21-beta and 5.1.22-rc as well.