Pregunta

¿Cómo puedo hacer que PDO funcione en mi mac (os x 10.5)?Estoy usando php integrado y php en Zend/Eclipse.Parece que no puedo encontrar ningún controlador útil para ello.

¿Fue útil?

Solución

Tuve que instalar el controlador PDO_PGSQL recientemente en Leopard y me encontré con una multitud de problemas.En mi búsqueda de respuestas, me topé con esta pregunta.Ahora lo instalé exitosamente y, aunque esta pregunta es bastante antigua, espero que lo que encontré pueda ayudar a otros (como yo) que sin duda tendrán problemas similares.

Lo primero que tendrás que hacer es instalar pera, si aún no lo has hecho, ya que no viene instalado en Leopard de forma predeterminada.

Una vez hecho esto, use el instalador PECL para descargar el paquete PDO_PGSQL:

$ pecl download pdo_pgsql
$ tar xzf PDO_PGSQL-1.0.2.tgz

(Nota:puede que tengas que correr pecl como superusuario, es decir sudo pecl.)

Después de eso, dado que el instalador de PECL no puede instalar la extensión directamente, deberá compilarla e instalarla usted mismo:

$ cd PDO_PGSQL-1.0.2
$ phpize
$ ./configure --with-pdo-pgsql=/path/to/your/PostgreSQL/installation
$ make && sudo make install

Si todo va bien deberías tener un archivo llamado "pdo_pgsql.so" sentado en un directorio que debería verse así "/usr/lib/php/extensions/no-debug-non-zts-20060613/" (la instalación de PECL debería haber generado el directorio en el que instaló la extensión).

Para finalizar la instalación, deberá editar su php.ini archivo.Busque la sección denominada "Extensiones dinámicas" y, debajo de la lista de extensiones (probablemente comentadas), agregue esta línea:

extension=pdo_pgsql.so

Ahora, suponiendo que esta es la primera vez que instala extensiones PHP, hay dos pasos adicionales que debe seguir para que esto funcione.Primero en php.ini, encuentra el extension_dir directiva (en "Rutas y directorios") y cámbiela al directorio que el pdo_pgsql.so El archivo fue instalado en.Por ejemplo, mi extension_dir directiva se parece a:

extension_dir = "/usr/lib/php/extensions/no-debug-non-zts-20060613"

El segundo paso, si tiene una Mac Intel de 64 bits, implica hacer que Apache se ejecute en modo de 32 bits.(Me gustaría saber si existe una estrategia mejor, pero por ahora, esta es la mejor que pude encontrar). Para hacer esto, edite el archivo de lista de propiedades ubicado en /System/Library/LaunchDaemons/org.apache.httpd.plist.Encuentra estas dos líneas:

<key>ProgramArguments</key>
<array>

Debajo de ellos, agrega estas tres líneas:

<string>arch</string>
<string>-arch</string>
<string>i386</string>

Ahora, simplemente reinicie Apache y PDO_PGSQL estará en funcionamiento.

Otros consejos

Eche un vistazo a este paquete PECL: PDO_PGSQL

No lo he probado yo mismo, pero me ha interesado jugar con Postgres como alternativa a MySQL.Si tengo la oportunidad de probarlo pronto, publicaré mis resultados aquí en caso de que me sirva de ayuda.

No estoy seguro de que esto ayude específicamente con los controladores PDO, pero podrías investigar MAPPStack de BitNami.

Tuve muchos problemas con Postgres, PHP y Apache en mi Mac, algunos de los cuales tenían que ver con versiones de 64 frente a 32 bits de algunos o todos ellos.Hasta ahora, la instalación de BitNami MAPPStack está funcionando bien en general.Quizás también le ayude con sus problemas de PDO.

Instale la nueva versión de PHP a través de Brew y reinicie el servidor, y php -v, se eliminan todos los problemas.

Esto es lo que funcionó para mí

brew install php55-pdo-pgsql

Esto instala PHP 5.5.32 y PostgreSQL 9.5.Ya tenía instalado PostgreSQL 9.4 así que desinstalé la versión homebrew con:

brew uninstall postgres

Luego debe actualizar /etc/apache2/httpd.conf para que apunte a la versión correcta de PHP y reiniciar Apache:

LoadModule php5_module /usr/local/Cellar/php55/5.5.32/libexec/apache2/libphp5.so

Mi versión de OSX es Yosemite.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top