¿Cómo agregar soporte Postgres a PHP instalado por Homebrew?

18

Ya instalé y configuré una nueva versión de PHP con Homebrew, incluido el soporte de MySQL y XDebug. Eso funciona bien Sin embargo, también necesito instalar el soporte para PostgreSQL. ¿Cómo puedo hacerlo?

He descubierto que es fácil al instalar PHP por primera vez, simplemente agregando la opción:

homebrew install php53 --with-pgsql

¿Cómo puedo lograr algo similar cuando mi PHP ya está instalado, sin reinstalarlo por completo? O, si reinstalo, ¿se mantienen todas las configuraciones y configuraciones adicionales, como XDebug?

Pavel S.
fuente
Lo mismo se aplica para --with-mysql, supongo ...

Respuestas:

22

brew helpno muestra todas las opciones disponibles. Para obtener más detalles sobre todos los comandos disponibles, consulte man brew. En su caso, puede ejecutar el comando de reinstalación:

brew reinstall php53 --with-postgresql

De acuerdo con la página de manual de brew, esto es sinónimo de ejecutar la desinstalación y luego la instalación. Parece que brew respaldará primero los archivos de configuración conocidos.

Si brew se queja de no poder encontrarlo pg_config, eso significa que postgresqlprimero debe instalarlo ; tiene que ser así postgresql; de lo contrario nunca lo encontrará pg_config. Pasé una cantidad excesiva de tiempo tratando de averiguar por qué --with-pgsqlno funcionaría cuando tuviera las postgresql92fórmulas instaladas.

Puedo confirmar personalmente que no eliminará ningún archivo de configuración personalizado.

dohpaz42
fuente
55
--with-pgsql está en desuso. Use --with-postgresql
tinkerr
¡Esto definitivamente funcionó para mí!
GavinoGrifoni
15

Cuando php ya está instalado, puede ejecutar brew install php55-pdo-pgsql

user219328
fuente
2
esto es solo para el controlador pdo, no para la extensión pgsql
Vinicius Pinto
3

Si usa Homebrew:

ls /usr/local/Cellar/|grep php
php54

Como puede ver, mi versión homebrew es para PHP 5.4, así que busco Homebrew con:

brew search php54

En los resultados de búsqueda, ya veo php54-pdo-pgsql.

Entonces, instalo el controlador con:

brew install php54-pdo-pgsql

Luego reinicie PHP.

taco
fuente
3

Tu seguimiento en Mac OS X si ya tienes php instalado.

brew install homebrew/php/php55-pdo-pgsql
Mitul
fuente
No veo cómo eso es sustancialmente diferente de las respuestas anteriores.
kasperd
Los comandos anteriores no funcionaron para mí, esto funcionó.
Mitul
2

Si instaló php con brew, debe reiniciar el php después de instalar cualquier módulo:

brew services restart php70

después de eso puedes usar el nuevo módulo instalado.

ricardo
fuente
1

Tuve un problema similar con PHP55 y lo resolví con la desinstalación (brew uninstall php55) y la reinstalación (brew install php55 --with-postgresql).

Asle
fuente
0

Similar a las respuestas anteriores, aunque ninguna de ellas funcionó lo suficientemente bien en mi caso, utilicé en brew reinstall php70 --with-postgresqllugar de un / install, que falló debido a dependencias vinculadas.

Siga eso con brew services restart php70lo sugerido anteriormente, y sudo apachectl restartpor si acaso.

danjah
fuente