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

Вот вывод:

Ian-MacBook-Pro: DBD-mysql-4.011 ianseyer $ sudo Perl Makefile.PL Не удается выполнить "mysql_config": такого файла или каталога в строке Makefile.PL 76 нет. Не удается найти файл "mysql_config"! Кажется, что ваш путь PATH не содержит пути к mysql_config. Прибегая к угаданным ценностям! Не удается выполнить "mysql_config": такого файла или каталога в строке Makefile.PL 454 нет. Не удается найти mysql_config. Используйте параметр --mysql_config, чтобы указать, где находится mysql_config. Невозможно выполнить "mysql_config": такого файла или каталога в строке Makefile.PL 454 нет. Не удается найти mysql_config. Используйте параметр --mysql_config, чтобы указать, где находится mysql_config. Невозможно выполнить "mysql_config": такого файла или каталога в строке Makefile.PL 454 нет. Не удается найти mysql_config. Используйте параметр --mysql_config, чтобы указать, где находится mysql_config. ПОЖАЛУЙСТА, ОБРАТИТЕ ВНИМАНИЕ: для правильной работы команды make test необходимо убедиться, что пользователь базы данных root может подключиться к вашему серверу MySQL и имеет надлежащие привилегии, требуемые этими тестами, такие как "удалить таблицу", "создать таблицу", "удалить процедуру", "создать процедуру", а также другие. 

mysql> предоставляет все права на тестирование.* root'@'localhost', идентифицированному's3kr1t'; Вы также можете опционально настроить пользователя на запуск "make test" с помощью:

perl Makefile.pl --testuser=username Невозможно выполнить "mysql_config": нет такого файла или каталога в строке Makefile.PL 454. Не удается найти mysql_config. Используйте параметр --mysql_config, чтобы указать, где находится mysql_config. Невозможно выполнить "mysql_config": такого файла или каталога в строке Makefile.PL 454 нет. Не удается найти mysql_config. Используйте параметр --mysql_config, чтобы указать, где находится mysql_config. Невозможно выполнить "mysql_config": такого файла или каталога в строке Makefile.PL 454 нет. Не удается найти mysql_config. Используйте параметр --mysql_config, чтобы указать, где находится mysql_config. Не удалось определить каталог mysql.h. Используйте perl Makefile.PL --cflags=-I, чтобы установить этот каталог. Для получения дополнительной информации см. Файл INSTALL.html, раздел "Флаги компилятора C" или введите perl Makefile.PL --help

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

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

10 ответов

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

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

Вы можете попытаться обойти эту проблему, установив следующий пакет:

sudo apt-get install libmysqlclient-dev 

ССЫЛКА: http://cpansearch.perl.org/src/RUDY/DBD-mysql-2.9008/INSTALL.html

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

sudo apt-get install libmysqlclient-dev

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

sudo cpan -f DBD::mysql

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

Если вы используете Ubuntu, вы можете легко установить, используя ниже cmd

    sudo apt-get install libdbd-mysql-perl

для более подробной информации проверьте cpan install.pod, содержащий подробности о других разновидностях Linux

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

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

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

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

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

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

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

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

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

Пытаться yum install mariadb-devel для CentOS 7, а затем запустите установку необходимого модуля Perl, например cpan DBD::mysql

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

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

Я решил установить libmariadbclient-dev, libmariadb-dev и mariadb-client на debian 9.13

      apt install mariadb-client libmariadbclient-dev libmariadb-dev
Другие вопросы по тегам