9 Replies Latest reply: Oct 9, 2015 10:32 PM by maxdev4real
bitsian Level 1 (0 points)

This is further to etresoft's post on July 11, 2011 titled - Local Web Server for Lion. However, I am only referring to the installation of DBD::MySQL driver from that post.


I have Xcode 4.3.2 downloaded from MacApp store. However, it didn't set my environment for development libraries at all. So I included /Applications/Xcode.app/Contents/Developer/usr/bin/ in PATH so it can find common utilities like make, cc, etc.


I have installed mysql-5.5.23-osx10.6-x86_64 from MySQL's DMG archive. That went smooth - I am able to start and stop the server. Get in using mysql command line client interface and execute queries, etc.


Perl came preinstalled with 10.7.3 Lion. Version of perl is 5.12.3.


I am now trying to install DBD::MySQL driver for interfacing with perl and ran into issues.


According to MySQL documentation, I first tried to install this driver using -


shell> perl -MCPAN -e shell

cpan> force install DBD::mysql


But this failed with make errors (the error is same as reported further below).


Then, after days of googling, I found the original post by etresoft on installing this driver.


I followed the steps documented in that post (reproduced below for easy reference). My comments in italics.


Download the MySQL Perl driver.


Done. My version of DBD happens to be 4.021.


Extract the archive with:

tar xvf DBD-mysql-4.021.tar


Move into the directory:

cd DBD-mysql-4.021


First, fix the MySQL client library. (credit)


For Lion, type:

sudo install_name_tool -id /usr/local/mysql-5.5.14-osx10.6-x86_64/lib/libmysqlclient.18.dylib /usr/local/mysql-5.5.14-osx10.6-x86_64/lib/libmysqlclient.18.dylib


Done. No issues.

Next, build DBD::mysql with:

perl Makefile.PL --mysql_config=/usr/local/mysql/bin/mysql_config --testuser=root --testpassword=xxxxxx


Done. No issues.



Failed! See steps leading to the error output below.


Administrators-iMac:DBD-mysql-4.021 admin$ pwd


Administrators-iMac:DBD-mysql-4.021 admin$ perl Makefile.PL --mysql_config=/usr/local//mysql/bin/mysql_config --testuser=root --testpassword=xxxxxx

I will use the following settings for compiling and testing:



  cflags        (mysql_config ) = -I/usr/local//mysql/include  -Os -g -fno-common -fno-strict-aliasing -arch x86_64

  embedded      (mysql_config ) =

  ldflags       (mysql_config ) =

  libs          (mysql_config ) = -L/usr/local//mysql/lib -lmysqlclient -lpthread

  mysql_config  (Users choice ) = /usr/local//mysql/bin/mysql_config

  nocatchstderr (default      ) = 0

  nofoundrows   (default      ) = 0

  ssl           (guessed      ) = 0

  testdb        (default      ) = test

  testhost      (default      ) =

  testpassword  (User's choice) = xxxxxx

  testsocket    (default      ) =

  testuser      (User's choice) = root



To change these settings, see 'perl Makefile.PL --help' and

'perldoc INSTALL'.



Checking if your kit is complete...

Looks good

Using DBI 1.615 (for perl 5.012003 on darwin-thread-multi-2level) installed in /System/Library/Perl/Extras/5.12/darwin-thread-multi-2level/auto/DBI/

Writing Makefile for DBD::mysql

Administrators-iMac:DBD-mysql-4.021 admin$ make

make: *** No rule to make target `/System/Library/Perl/5.12/darwin-thread-multi-2level/CORE/config.h', needed by `Makefile'.  Stop.

Administrators-iMac:DBD-mysql-4.021 admin$


I have checked the directory in which it is looking for config.h. It's not there. There's a perl.h there and a Config.pm in the directory one level up from CORE. I have been unable to proceed with further steps listed below.


make test

sudo make install


Can someone please help. I have been stuck with this for the past week or so. I have found many posts on installing this driver and all of them assume the make was successful, but for me, it fails right in the first step.



iMac, Mac OS X (10.7.3)