Se produce el error sql.h en MacOS 12 (Monterey) durante la instalación del controlador sqsrv y pdo_sqsrv.
Tengo macOS 12 Monterey, PHP 7.4. Me gustaría instalar los controladores sqlsrv y pdo_sqlsrv. Sin embargo, obtengo el siguiente error.
g++ -I/opt/homebrew/Cellar/php@7.4/7.4.27/include/php/ext -std=c++11 -I. -I/private/tmp/pear/temp/pdo_sqlsrv -DPHP_ATOM_INC -I/private/tmp/pear/temp/pear-build-rootbnJKua/pdo_sqlsrv-5.9.0/include -I/private/tmp/pear/temp/pear-build-rootbnJKua/pdo_sqlsrv-5.9.0/main -I/private/tmp/pear/temp/pdo_sqlsrv -I/opt/homebrew/Cellar/php@7.4/7.4.27/include/php -I/opt/homebrew/Cellar/php@7.4/7.4.27/include/php/main -I/opt/homebrew/Cellar/php@7.4/7.4.27/include/php/TSRM -I/opt/homebrew/Cellar/php@7.4/7.4.27/include/php/Zend -I/opt/homebrew/Cellar/php@7.4/7.4.27/include/php/ext -I/opt/homebrew/Cellar/php@7.4/7.4.27/include/php/ext/date/lib -I/private/tmp/pear/temp/pdo_sqlsrv/shared/ -DHAVE_CONFIG_H -std=c++11 -D_FORTIFY_SOURCE=2 -O2 -fstack-protector -c /private/tmp/pear/temp/pdo_sqlsrv/pdo_dbh.cpp -fno-common -DPIC -o .libs/pdo_dbh.o
In file included from /private/tmp/pear/temp/pdo_sqlsrv/pdo_dbh.cpp:24:
In file included from /private/tmp/pear/temp/pdo_sqlsrv/php_pdo_sqlsrv_int.h:23:
In file included from /private/tmp/pear/temp/pdo_sqlsrv/shared/core_sqlsrv.h:41:
In file included from /private/tmp/pear/temp/pdo_sqlsrv/shared/FormattedPrint.h:24:
In file included from /private/tmp/pear/temp/pdo_sqlsrv/shared/xplat_winnls.h:24:
In file included from /private/tmp/pear/temp/pdo_sqlsrv/shared/typedefs_for_linux.h:23:
/private/tmp/pear/temp/pdo_sqlsrv/shared/xplat.h:30:10: fatal error: 'sql.h' file not found
#include <sql.h>
^~~~~~~
1 error generated.
make: *** [pdo_dbh.lo] Error 1
ERROR: `make' failed
También intenté 5.10.0-beta2 (prelanzamiento) [1]: https://github.com/microsoft/msphpsql/releases/. Pero sigo obteniendo el mismo error. ¿Me he saltado algunos pasos o la versión no está lista para macOS 12? Gracias.
davy.ai
Parece que te falta instalar el SQL Server Native Client en tu máquina, el cual incluye el archivo necesario “sql.h”.
Puedes descargarlo desde el sitio web de Microsoft: https://docs.microsoft.com/en-us/sql/connect/odbc/windows/system-requirements-installation-and-driver-files?view=sql-server-ver15#installing-microsoft-odbc-driver-for-sql-server-on-macos
Una vez que hayas instalado el controlador, puedes intentar instalar de nuevo los controladores sqlsrv y pdo_sqlsrv.
Si el problema persiste, es posible que la versión actual de los controladores no sea compatible aún con macOS 12 Monterey. Es posible que tengas que esperar a una versión actualizada o contactar al equipo de soporte del controlador para obtener ayuda.