Question

I'm running an Amazon EC2 instance (uname -r gives "3.4.43-43.43.amzn1.x86_64") and trying to set up DBD::mysql for use with my Perl scripts.

Installing DBD::mysql with cpanm: cpanm --sudo DBD::mysql

This returns an error with the following log file:

You have /usr/bin/unzip Searching DBD::mysql on cpanmetadb ...
--> Working on DBD::mysql Fetching http://www.cpan.org/authors/id/C/CA/CAPTTOFU/DBD-mysql-4.023.tar.gz
-> OK Unpacking DBD-mysql-4.023.tar.gz Entering DBD-mysql-4.023 Checking configure dependencies from META.yml Checking if you have DBI
1.08 ... Yes (1.627) Configuring DBD-mysql-4.023 Running Makefile.PL 64 lines yanked                                               1,1      Top

perl Makefile.PL --testuser=username

Can't exec "mysql_config": No such file or directory at Makefile.PL line 479. 
Can't find mysql_config. Use --mysql_config option to specify where mysql_config is located 
Can't exec "mysql_config": No such file or directory at Makefile.PL line 479. 
Can't find mysql_config. Use --mysql_config option to specify where mysql_config is located 
Can't exec "mysql_config": No such file or directory at Makefile.PL line 479. Failed to determine directory of mysql.h. Use

  perl Makefile.PL --cflags=-I<dir>

to set this directory. For details see the INSTALL.html file, section "C Compiler flags" or type

  perl Makefile.PL --help Can't find mysql_config. Use --mysql_config option to specify where mysql_config is located
-> N/A
-> FAIL Configure failed for DBD-mysql-4.023. See /home/ec2-user/.cpanm/work/1373404386.28268/build.log for details.

I've tried searching for mysql_config on the entire system and found nothing. I've googled for hours and haven't found a solution. Any help is much appreciated! Thanks

Was it helpful?

Solution 3

I did a search for mysql packages on yum using yum list \*mysql\* One of the packages was called perl-dbd-mysql. I installed it and it seems to have done the trick.

OTHER TIPS

In ubuntu just install libmysqlclient-dev via

sudo apt-get install libmysqlclient-dev

Here's the relevant documentation from the INSTALL.html for the archive you downloaded:

The DBD::mysql Makefile.PL needs to know where to find your MySQL installation. This may be achieved using command line switches (see Configuration) or automatically using the mysql_config binary which comes with most MySQL distributions. If your MySQL distribution contains mysql_config the easiest method is to ensure this binary is on your path.

So, you should already have that file (and MySQL installed) before running this command apparently. If you don't have the file with your distribution of MySQL, then you may have to use the command line switches instead...

So, what version of MySQL did you install prior? Or should you be using Amazon RDS in this case?

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top