web-dev-qa-db-fra.com

Installez pdo pour postgres Ubuntu

J'essaie d'activer le pilote pdo pour mon installation php, mais quand je lance la commande

./configure --prefix=/usr/local/webserver/php --with-apxs2=/usr/local/webserver/Apache2/bin/apxs --enable-mbstring --enable-intl --with-icu-dir=/usr --with-pgsql=/usr/local/webserver/postgres --with-pdo-pgsql=/usr/local/webserver/postgres

Je reçois

"Unable to build the PDO PostgreSQL driver: libpq 7.4+ is required"

J'installe postgresql dans ce répertoire

/usr/local/webserver/postgres

J'ai installé postgresql 9.0.4.1 en utilisant le paquet bin et en utilisant php 5.3

39
Richard Pérez

Le package PDO Pecl est maintenant obsolète. Au fait, le paquet debian php5-pgsql inclut maintenant à la fois le pilote standard et le pilote PDO.

apt-get install php-pgsql

Apache doit également être redémarré avant que les sites ne puissent l'utiliser:

Sudo systemctl restart Apache2
83
Alex

Essayez plutôt la version packagée de pecl (l’avantage des installations packagées est qu’elles sont plus faciles à mettre à niveau):

apt-get install php5-dev
pecl install pdo
pecl install pdo_pgsql

ou, si vous avez juste besoin de a pilote pour PHP, mais que ce ne soit pas obligatoirement celui de PDO:

apt-get install php5-pgsql

Sinon, ce message signifie probablement que vous devez installer un package libpq plus récent. Vous pouvez vérifier votre version en lançant:

dpkg -s libpq-dev
24
wildpeaks

Si vous utilisez le merveilleux ondrej/php référentiel Ubuntu avec php7.0:

Sudo apt-get install php7.0-pgsql

Pour ondrej/php Référentiel Ubuntu avec php7.1:

Sudo apt-get install php7.1-pgsql

Même référentiel, mais pour php5.6:

Sudo apt-get install php5.6-pgsql

Concis et facile à retenir. J'aime ce référentiel.

17
Dylan Pierce

Le pilote PDO pour PostgreSQL est maintenant inclus dans le paquet debian php5-dev. Les étapes ci-dessus utilisant Pecl ne fonctionnent plus.

8
Will

Si vous utilisez PHP 5.6), la commande est la suivante:

Sudo apt-get install php5.6-pgsql
0
joan16v