Подтвердить что ты не робот

Установить pdo для postgres Ubuntu

Я пытаюсь включить драйвер pdo для установки php, но когда я запустил команду

./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

Я получаю

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

Я устанавливаю postgresql в этом каталоге

/usr/local/webserver/postgres

Я установил postgresql 9.0.4.1, используя пакет bin и используя php 5.3

4b9b3361

Ответ 1

Пакет Pecl PDO теперь устарел. Кстати, пакет debian php5-pgsql теперь включает в себя как обычный, так и PDO-драйвер, поэтому просто:

apt-get install php-pgsql

Apache также необходимо перезапустить, прежде чем сайты смогут его использовать:

sudo systemctl restart apache2

Ответ 2

Попробуйте вместо этого упакованную версию pecl (преимущество упакованных инсталляций в том, что их легче обновить):

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

или, если вам просто нужен драйвер для PHP, но он не обязательно должен быть PDO:

apt-get install php5-pgsql

В противном случае это сообщение, скорее всего, означает, что вам нужно установить более свежий пакет libpq. Вы можете проверить, какая версия у вас запущена:

dpkg -s libpq-dev

Ответ 3

Если вы используете замечательный репозиторий ondrej/php ubuntu с php7.0:

sudo apt-get install php7.0-pgsql

Для ondrej/php репозитория Ubuntu с php7.1:

sudo apt-get install php7.1-pgsql

Тот же репозиторий, но для php5.6:

sudo apt-get install php5.6-pgsql

Кратко и легко запомнить. Мне нравится этот репозиторий.

Ответ 4

Драйвер PDO для PostgreSQL теперь включен в пакет debian php5-dev. Вышеупомянутые шаги с использованием Pecl больше не работают.

Ответ 5

Если вы используете PHP 5.6, команда:

sudo apt-get install php5.6-pgsql