Pgpool 安装 - 未安装 libpq 或 libpq 已旧

use*_*720 2 postgresql replication linux pgpool

根据此处的文档,我想用 PostgreSQL 数据库创建一个 pgpool II。当我尝试安装时,遇到此错误:

  configure: error: libpq is not installed or libpq is old
Run Code Online (Sandbox Code Playgroud)

搜索 pgpool 网站,他们提到./configure使用以下命令运行:

  --with-pgsql 
Run Code Online (Sandbox Code Playgroud)

或者

   --with-pgsql-includedir
Run Code Online (Sandbox Code Playgroud)

或者

   --with-pgsql-libdir 
Run Code Online (Sandbox Code Playgroud)

但我仍然面临同样的问题。谁能指导我从这里可以做什么?

我正在运行从 CentOS 5 上的 yum 包安装的 PostgreSQL 9.2。

Cra*_*ger 6

与其编译 PgPool,为什么不直接从包管理中安装它呢?

yum install postgresql-pgpool-II
Run Code Online (Sandbox Code Playgroud)

我不使用 CentOS,但它是 Fedora 17 中的包名,两者通常是一致的。

由于您在 CentOS 5 上使用通过 Yum 安装的 PostgreSQL 9.2,因此您显然使用的是 PostgreSQL 的第 3 方包装,因此您很可能正在使用yum.postgresql.org存储库。此存储库声称包含 PgPool-II,因此请尝试:

yum search pgpool
Run Code Online (Sandbox Code Playgroud)

看看你是否找到了任何包裹。通过以下方式获取有关它们的详细信息:

yum info packagename
Run Code Online (Sandbox Code Playgroud)

否则,为了编译 PgPool,你需要安装 PostgreSQL 的开发包:

yum install postgresql-devel
Run Code Online (Sandbox Code Playgroud)

如果仅此一项还不能解决问题,请尝试确保pg_configPATH

export PATH=$PATH:/usr/pgsql-9.2/bin
./configure
Run Code Online (Sandbox Code Playgroud)

你不应该需要指定一个libdirincludedir明确,作为the're中/usr/include/usr/lib(或/usr/lib64)在CentOS和那些是默认的搜索位置configuregcc。很可能您只是没有安装开发头文件。