我无法安装psycopg2。 我收到以下错误,当我尝试pip install 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。
Answer 1:
pg_config
是postgresql-devel
( libpq-dev
在于Debian / Ubuntu, libpq-devel
在Cygwin / Babun。)
Answer 2:
在Mac OS X,我解决它使用自制包管理器
brew install postgresql
Answer 3:
你已经安装了Python-dev的? 如果你已经有了,也尝试安装的libpq-dev的
sudo apt-get install libpq-dev python-dev
从文章: 如何下的virtualenv安装psycopg2
Answer 4:
同样在OSX。 从已安装的Postgress.app http://postgresapp.com/但有同样的问题。
我发现pg_config
在该应用中的内容,并添加了DIR到$PATH
。
这是在/Applications/Postgres.app/Contents/Versions/latest/bin
。 所以这工作: export PATH="/Applications/Postgres.app/Contents/Versions/latest/bin:$PATH"
Answer 5:
apt-get build-dep python-psycopg2
Answer 6:
在高山,包含库pg_config
是postgresql-dev
。 要安装,运行:
apk add postgresql-dev
Answer 7:
只是总结一下,我也正好面临同样的问题。 读了很多计算器帖子和在线的博客后,其工作对我最终的解决方案是这样的:
1)PostgreSQL的(开发或任何稳定的版本)应安装psycopg2之前安装。
2)pg_config文件(该文件通常驻留在PostgreSQL安装文件夹的bin文件夹)路径必须是安装psycopg2之前显式设置。 就我而言,PostgreSQL的安装路径是:
/opt/local/lib/postgresql91/
所以为了明确设置pg_config文件的路径,我进入之后在我的终端命令:
PATH=$PATH:/opt/local/lib/postgresql91/bin/
该命令确保当您尝试安装点子psycopg2,它会找到的路径,自动pg_config这个时候。
我还贴出了完整的错误与跟踪以及对我的解决方案博客 ,你可能希望参考。 它适用于Mac OS X,但pg_config路径问题是通用的,适用于Linux还。
Answer 8:
sudo apt-get install libpq-dev
在Ubuntu 15.4对我的作品
Answer 9:
这是为我工作在CentOS,第一次安装:
sudo yum install postgresql postgresql-devel python-devel
在Ubuntu上只使用equivilent apt-get的包。
sudo apt-get install postgresql postgresql-dev python-dev
而现在包括路径你的PostgreSQL二进制文件目录与您安装PIP,这应该对任何的Debain或RHEL基于Linux的工作:
sudo PATH=$PATH:/usr/pgsql-9.3/bin/ pip install psycopg2
确保包括正确的路径。 就这样 :)
Answer 10:
UPDATE /etc/yum.repos.d/CentOS-Base.repo,[基]和[更新]节
ADD排除= 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
Answer 11:
对于运行OS X,该解决方案为我工作:
1)安装Postgres.app:
http://www.postgresql.org/download/macosx/
2)然后打开终端并运行此命令,替换那里说:{{版本}}与Postgres的版本号:
出口PATH = $ PATH:/Applications/Postgres.app/Contents/Versions / {{版本}} / bin中
如
出口PATH = $ PATH:/Applications/Postgres.app/Contents/Versions/9.4/bin
Answer 12:
阿里的解决方案为我,但我无法找到bin文件夹位置。 一个快速的方法找到Mac OS X上的路径是开放的psql(有一个在顶部菜单栏的快速链接)。 这将打开一个单独的终端窗口,并在第二行你的Postgres安装的路径会出现像这样:
My-MacBook-Pro:~ Me$ /Applications/Postgres93.app/Contents/MacOS/bin/psql ; exit;
你pg_config文件是在bin文件夹。 因此,在安装前psycopg2设置pg_config文件的路径:
PATH=$PATH:/Applications/Postgres93.app/Contents/MacOS/bin/
或较新的版本:
PATH=$PATH:/Applications/Postgres.app/Contents/Versions/9.3/bin
然后安装psycopg2。
Answer 13:
尝试将它添加到PATH:
PATH=$PATH:/usr/pgsql-9.1/bin/ ./pip install psycopg2
Answer 14:
在Linux Mint的sudo apt-get install libpq-dev
工作对我来说。
Answer 15:
您需要在安装前psycopg2升级你的点子。 使用此命令
pip install --upgrade pip
Answer 16:
只是解决了在美分OS 7的问题:
export PATH=$PATH:/usr/pgsql-9.5/bin
确保你的PostgreSQL版本正确的版本相匹配的上方。
Answer 17:
这对我的作品:
sudo apt-get install libpq-dev python-dev
Answer 18:
在Windows中,您可能需要安装Psycopg的Windows移植 ,这是在建议psycopg的文档 。
Answer 19:
须藤yum的安装PostgreSQL-devel的(centos6X)
PIP安装psycopg2 == 2.5.2
Answer 20:
这里,OS X完整性:如果从使用MacPorts安装PostgreSQL,pg_config将是/opt/local/lib/postgresql94/bin/pg_config
。
当你安装了MacPorts的时候,就已经加入/opt/local/bin
到PATH。
因此,这将解决这个问题: $ sudo ln -s /opt/local/lib/postgresql94/bin/pg_config /opt/local/bin/pg_config
现在pip install psycopg2
将能够运行pg_config
没有问题。
Answer 21:
在Mac OS X和如果您正在使用Postgres的应用程序( http://postgresapp.com/ ):
export PATH=$PATH:/Applications/Postgres.app/Contents/Versions/latest/bin
没有必要在此命令中指定的Postgres版本。 将始终指向最新的。
做
pip install psycopg2
PS:如果更改不代表您可能需要重新启动终端/命令提示符
资源
Answer 22:
这是我设法安装psycopg2
$ wget http://initd.org/psycopg/tarballs/PSYCOPG-2-5/psycopg2-2.5.3.tar.gz
$ tar -xzf psycopg2-2.5.3.tar.gz
$ cd psycopg2-2.5.3
$ python setup.py install
Answer 23:
我敢肯定你已经经历了同样的“问题”我没有,所以我会为您提供非常简单的解决方案...
在你的情况,实际的路径,你需要添加到$ PATH(或命令param)将:
/usr/pgsql-9.1/bin/pg_config
不
/usr/pgsql-9.1/bin
例如,如果您以后运行的Python脚本setup.py,你可以运行它是这样的:
python setup.py build_ext --pg-config /usr/pgsql-9.1/bin/pg_config build
可能为时已晚,但仍是最简单的解决方案。
稍后编辑:
在进一步的测试中,我发现,如果你最初添加的路径,形式pg_config
/usr/pgsql-9.1/bin
(无/ pg_config后..... / bin),然后运行PIP安装命令它会工作。
但是,如果你再决定按照指示运行python setup.py,你将不得不使用指定后/ pg_config ..... /箱,即路径
python setup.py build_ext --pg-config /usr/pgsql-9.1/bin/pg_config build
Answer 24:
在Gentoo,你必须执行以下
# Install postgresql client libraries
sudo emerge postgresql-base
Answer 25:
为CentOS /红帽确保/etc/alternatives/pgsql-pg_config
是一种非断符号链接
Answer 26:
安装python-psycopg2
解决了这个问题,我在Arch Linux的:
pacman -S python-psycopg2
Answer 27:
我发现,这个页面提供了最好的说明了我的Mac和画中画安装PostgreSQL安装命令后完美地工作:
https://www.codefellows.org/blog/three-battle-tested-ways-to-install-postgresql
Answer 28:
在MAC莫哈韦沙漠,如果你已经使用BREW安装了它,然后做brew info <your postgres>
它会告诉你,你应该设置,只需复制粘贴这些命令,重新启动您的外壳和完蛋了所有的环境变量!
Answer 29:
视窗:
- 安装PostgreSQL。 pg_config是在PostgreSQL的bin文件夹。
- 该路径添加到PostgreSQL的bin文件夹到Windows PATH环境变量:
路径:C:\ Program Files文件\的PostgreSQL \ 9.5 \ BIN;
文章来源: pg_config executable not found