Install pdo for postgres Ubuntu

2020-01-30 06:13发布

I am trying to enable the pdo driver for my php installation, but when I runn the command

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

I get

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

I install postgresql in that directory

/usr/local/webserver/postgres

I installed postgresql 9.0.4.1 using the bin package and using php 5.3

5条回答
再贱就再见
2楼-- · 2020-01-30 06:14

Try the packaged pecl version instead (the advantage of the packaged installs is that they're easier to upgrade):

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

or, if you just need a driver for PHP, but that it doesn't have to be the PDO one:

apt-get install php5-pgsql

Otherwise, that message most likely means you need to install a more recent libpq package. You can check which version you have by running:

dpkg -s libpq-dev
查看更多
ゆ 、 Hurt°
3楼-- · 2020-01-30 06:20

If you're using the wonderful ondrej/php ubuntu repository with php7.0:

sudo apt-get install php7.0-pgsql

For ondrej/php Ubuntu repository with php7.1:

sudo apt-get install php7.1-pgsql

Same repository, but for php5.6:

sudo apt-get install php5.6-pgsql

Concise and easy to remember. I love this repository.

查看更多
劫难
4楼-- · 2020-01-30 06:21

PDO driver for PostgreSQL is now included in the debian package php5-dev. The above steps using Pecl no longer works.

查看更多
劫难
5楼-- · 2020-01-30 06:26

If you are using PHP 5.6, the command is:

sudo apt-get install php5.6-pgsql
查看更多
Fickle 薄情
6楼-- · 2020-01-30 06:40

Pecl PDO package is now deprecated. By the way the debian package php5-pgsql now includes both the regular and the PDO driver, so just:

apt-get install php-pgsql

Apache also needs to be restarted before sites can use it:

sudo systemctl restart apache2
查看更多
登录 后发表回答