尝试安装 psycopg2 模块时 CentOS 上缺少 libpq 头文件

And*_*oss 2 centos psycopg2 libpq python-2.7 postgresql-9.3

我几天来一直在网上搜索,但我无法在我的 Linux 机器(CentOS - 2.6.32-431.3.1.el6.x86_64 GNU/Linux)上安装 psycopg2 库。

我知道问题是我缺少 libpq 头文件,因为我在尝试 pip install psycopg2 后收到此消息: libpq-fe.h: No such file or directory

http://initd.org/psycopg/docs/install.html#install-from-source

我发现的几乎所有文章都指出我在 CentOS 上使用 apt-get 但 apt-get 不是 CentOS 6.3 上的标准工具,所以我一直在尝试yum install

但是,每次我尝试使用sudo yum install下载的东西时,软件包都不可用。例如:

yum install postgresql-devel Loaded plugins: fastestmirror, refresh-packagekit, security Setting up Install Process Loading mirror speeds from cached hostfile drivesrvr | 2.2 kB 00:00 No package postgresql-devel available. Error: Nothing to do

我试过这个:

  1. yum 安装 postgresql 服务器
  2. yum 安装 python-devel
  3. 服务 postgresql initdb
  4. 服务 postgresql 启动
  5. yum 安装 python-psycopg2

有任何想法吗?如果没有 libpq 头文件,我将无法安装 Python 程序所需的 psycopg2 模块。这适用于 Python 2.7.12。和 PostgreSQL 9.3.13。

小智 8

我在亚马逊的 Fedora 2016.09 盒子上遇到了这个确切的问题。我能够通过 yum 安装 postgresql-devel,但这并没有奏效;该版本似乎已过时。

我使用以下方法解决了它:

sudo yum install /usr/include/libpq-fe.h
Run Code Online (Sandbox Code Playgroud)

这将安装 postgresql-devel 的更新版本,它允许在通过 pip 安装时正确编译 psycopg2。