Sua gema rubi provavelmente está pegando as antigas bibliotecas de desenvolvimento. Tipicamente você irá adicionar /usr/pgsql-9.0/include/ aos seus includes.
Estou tentando instalar a gem do PG (postgres) em um servidor CentoOS, mas ele continua dizendo que o Postgres é muito antigo, mesmo que eu tenha atualizado para o 9.1.3 (conforme as instruções aqui link ).
Estou usando o CentOS 5.8 (e o Ruby 1.9.3)
Aqui está a mensagem de erro:
Building native extensions. This could take a while...
ERROR: Error installing pg:
ERROR: Failed to build gem native extension.
/usr/local/bin/ruby extconf.rb
checking for pg_config... yes
Using config values from /usr/bin/pg_config
checking for libpq-fe.h... yes
checking for libpq/libpq-fs.h... yes
checking for pg_config_manual.h... yes
checking for PQconnectdb() in -lpq... yes
checking for PQconnectionUsedPassword()... no
Your PostgreSQL is too old. Either install an older version of this gem or upgrade your database.
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers. Check the mkmf.log file for more
details. You may need configuration options.
O psql --version confirma minha versão: psql (PostgreSQL) 9.1.3
Eu posso confirmar os pacotes instalados:
Setting up Install Process
Package postgresql91-9.1.3-1PGDG.rhel5.x86_64 already installed and latest version
Package postgresql91-devel-9.1.3-1PGDG.rhel5.x86_64 already installed and latest version
Package postgresql91-server-9.1.3-1PGDG.rhel5.x86_64 already installed and latest version
Package postgresql91-libs-9.1.3-1PGDG.rhel5.x86_64 already installed and latest version
Package postgresql91-contrib-9.1.3-1PGDG.rhel5.x86_64 already installed and latest version
Nothing to do
Alguma idéia de como solucionar isso? Agradecemos antecipadamente.
Como você está executando a versão mais recente do PostgreSQL, parece muito improvável que seja realmente muito antigo. Eu olharia o código-fonte de qualquer coisa que estivesse gerando esse erro e procuraria por um bug lá. Como é calcular que o PostgreSQL é "muito antigo"?
Colado de link
Eu estava enlouquecendo com isso até perceber que postgresql-devel
e postgresql-libs
eram de 8.1.23
!!!
$ yum list installed postgres*
Loaded plugins: fastestmirror, security
Installed Packages
postgresql-devel.i386 8.1.23-10.el5_10 installed
postgresql-devel.x86_64 8.1.23-10.el5_10 installed
postgresql-libs.i386 8.1.23-10.el5_10 installed
postgresql-libs.x86_64 8.1.23-10.el5_10 installed
---------------
$ sudo yum install postgresql94-libs
$ sudo yum install postgresql94-devel
$ gem install pg
Successfully installed pg-0.18.1
Tags postgresql centos rubygems