Si recibe un error “No se puede ejecutar mysql_config:no existe tal archivo o directorio en Makefile.PL” , así es como puede resolver el error. Antes de eso, echa un vistazo al mensaje de error completo:
Can't exec "mysql_config": No such file or directory at Makefile.PL line 561. Can't find mysql_config. Use --mysql_config option to specify where mysql_config is located. Failed to determine directory of mysql.h
Cómo solucionar No se puede ejecutar mysql_config:No existe tal archivo o directorio en Makefile.PL
Este error ocurre si el sistema no puede encontrar el paquete de cliente MySQL. El script de instalación "Makefile.PL"
se puede configurar usando muchos interruptores como --cflags
, --libs
etc…
cflags
es una lista de banderas que se dan al compilador de C. El indicador importante es la ubicación de los archivos de encabezado de MySQL. Para determinar los indicadores predeterminados, mysql_config
La secuencia de comandos se puede utilizar como se muestra a continuación.
# mysql_config --cflags -I/usr/include/mysql
Del mismo modo, --libs
es una lista de banderas que se dan al enlazador o cargador. Aquí, los indicadores predeterminados se determinan ejecutando mysql_config
comando como se muestra a continuación:
# mysql_config --libs -L/usr/lib/x86_64-linux-gnu -lmysqlclient -lpthread -lz -lm -lrt -ldl
Entonces, generalmente si --cflags
y --libs
no se especifican en la línea de comando, entonces mysql_config
Se usará el script y este script viene como parte de la distribución del cliente MySQL. Bueno, aquí hay una referencia que explica esto en detalle.
Pero en la mayoría de los casos, si hubiera instalado solo el servidor MySQL usando 'apt-get install mysql-server'
entonces hay posibilidades de que no tenga instalada la biblioteca de cliente MySQL. Significa que al sistema le falta mysql_config
comando también.
Para solucionar este problema, instale la biblioteca cliente de MySQL como se muestra a continuación:
$ sudo apt-get install libmysqlclient-dev
Verifique si mysql_config está instalado usando el siguiente comando:
$ which mysql_config /usr/bin/mysql_config
# whereis mysql_config mysql_config: /usr/bin/mysql_config /usr/share/man/man1/mysql_config.1.gz
¡Eso es todo! Ahora intente ejecutar el script de instalación "Makefile.PL" y debería ubicarse mysql_config
sin ningún problema.