我在安装psycopg2时遇到了麻烦。当我尝试pip安装psycopg2时,我得到以下错误:

Error: pg_config executable not found.

Please add the directory containing pg_config to the PATH

or specify the full executable path with the option:



    python setup.py build_ext --pg-config /path/to/pg_config build ...



or with the pg_config option in 'setup.cfg'.

----------------------------------------
Command python setup.py egg_info failed with error code 1 in /tmp/pip-build/psycopg2

但问题是pg_config实际上在我的PATH中;它运行起来没有任何问题:

$ which pg_config
/usr/pgsql-9.1/bin/pg_config

我尝试将pg_config路径添加到setup.cfg文件中,并使用我从他们的网站(http://initd.org/psycopg/)下载的源文件构建它,我得到了以下错误消息!

Error: Unable to find 'pg_config' file in '/usr/pgsql-9.1/bin/'

但它确实在那里!!

我对这些错误感到困惑。有人能帮忙吗?

顺便说一下,我sudo所有的命令。而且我使用的是RHEL 5.5。


当前回答

更新/etc/yum.repos.d / CentOS-Base。回购,[基础]和[更新]部分 添加排除= postgresql *

curl -O http://yum.postgresql.org/9.1/redhat/rhel-6-i386/pgdg-centos91-9.1-4.noarch.rpmr  
rpm -ivh pgdg-centos91-9.1-4.noarch.rpm

yum install postgresql  
yum install postgresql-devel

PATH=$PATH:/usr/pgsql-9.1/bin/

pip install psycopg2

其他回答

快速了解pip的工作原理pip -> python2和pip3 -> python3,所以如果你想在python3上修复这个问题,你可以简单地sudo pip3 install psycopg2,这应该可以工作,可能。

MAC用户

通过HomeBrew添加postgresql包后,可能需要添加openssl路径变量-

出口LIBRARY_PATH = $ LIBRARY_PATH: / usr /地方/ opt / openssl / lib /

然后,您可以再次安装psycopg2包,它应该可以工作。

apt-get build-dep python-psycopg2

在Linux Mint sudo apt-get安装libpq-dev为我工作。

对于那些运行OS X的人来说,这个解决方案对我来说是有效的:

1)安装postgresql .app:

http://www.postgresql.org/download/macosx/

2)然后打开终端并运行这个命令,将上面的{{version}}替换为Postgres的版本号:

导出路径= $路径:/应用程序/ Postgres.app /内容/版本/ {{version}} / bin

e.g.

导出路径= $路径:/应用程序/ Postgres.app /内容/版本/ 9.4 / bin