Попытка установить Perl-Mysql DBD, mysql_config не может быть найдена

Здесь вывод:

Ian-MacBook-Pro:DBD-mysql-4.011 ianseyer$ sudo Perl Makefile.PL
Can't exec "mysql_config": No such file or directory at Makefile.PL line 76.

Cannot find the file 'mysql_config'! Your execution PATH doesn't seem 
not contain the path to mysql_config. Resorting to guessed values!
Can't exec "mysql_config": No such file or directory at Makefile.PL line 454.
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 454.
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 454.
Can't find mysql_config. Use --mysql_config option to specify where mysql_config is located


PLEASE NOTE:

For 'make test' to run properly, you must ensure that the 
database user 'root' can connect to your MySQL server 
and has the proper privileges that these tests require such 
as 'drop table', 'create table', 'drop procedure', 'create procedure'
as well as others. 

mysql> grant all privileges on test.* to 'root'@'localhost' identified by 's3kr1t';

You can also optionally set the user to run 'make test' with:

perl Makefile.pl --testuser=username

Can't exec "mysql_config": No such file or directory at Makefile.PL line 454.
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 454.
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 454.
Can't find mysql_config. Use --mysql_config option to specify where mysql_config is located
Failed to determine directory of mysql.h. Use

  perl Makefile.PL --cflags=-I

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

  perl Makefile.PL --help

Я исследовал проблему и попытался сделать символическую ссылку безрезультатно.

Нужно ли мне самому скомпилировать это?

Ответы

Ответ 1

Если вы установили сервер mysql, который все устанавливают: sudo apt-get install mysql-server (или что-то вроде этого)

вам не хватает нескольких дополнительных файлов, от которых зависит makefile для этого модуля perl.

Вы можете попытаться обойти эту проблему, установив следующий пакет: sudo apt-get install libmysqlclient-dev

Referece: http://cpansearch.perl.org/src/RUDY/DBD-mysql-2.9008/INSTALL.html#configuration

Ответ 2

Применяя к пользователям ubuntu/debian (я запускаю U-12.0.4), было высказано предположение, что пользователи:

sudo apt-get install libmysqlclient-dev

Но тогда возникает другая проблема с частью maketest установки, где "password: NO" FAILED. Чтобы обойти этот тест, просто используйте силу:

sudo cpan -f DBD::mysql

Ответ 3

Установите пакет mysql-devel, который относится к вашей версии сервера distro и mysql.

Ответ 4

Вам просто нужно, чтобы mysql-server и mysql-devel были установлены локально, поэтому cpan может создать модуль, возможно, впоследствии вы удалите сервер mysql.

Ответ 5

если u r, используя ubuntu, u можно легко установить, используя ниже cmd

    sudo apt-get install libdbd-mysql-perl

для более подробной информации проверьте cpan install.pod, чтобы подробно описать другой вкус Linux

Ответ 6

Найдите script mysql_config.pl в вашем каталоге MySQL и запустите Makefile.PL как:

perl Makefile.PL --mysql_config=/path/to/mysql-5.x.y.zzz/bin/mysql_config.pl

Ответ 7

Если вы пытаетесь установить через CPAN, вы не можете, насколько мне известно, установить опцию --mysql_config напрямую. И, в том числе каталог, содержащий mysql_config в переменной среды PATH, похоже, не помогает.

Однако, если у вас есть доступный файл mysql_config, вы можете сделать следующее, чтобы сделать установку успешной:

ln -s /path/to/mysql_config /usr/local/bin/

Затем удалите символическую ссылку после установки DBD:: mysql.

Тесты во время установки будут по-прежнему терпеть неудачу, если вы не установили MySQL в каком-то центральном/стандартном расположении в вашей системе, но установка все равно будет успешной.

Если у вас нет доступного mysql_config, вы можете получить его из загрузки MySQL Community Server из tar.gz из mysql.com. Он будет находиться в подкаталоге bin/из извлеченных файлов. Если вы хотите, чтобы MySQL был установлен в вашей системе, лучшим вариантом является, вероятно, загрузка RPM и установка их или установка через систему управления пакетами вашей ОС.

Ответ 8

Я получал ошибки теста. Это помогло мне:

perl Makefile.PL  --testuser=bob  --testpass=bobtest