And*_*dré 484 python pip psycopg2 virtualenv
我正在使用virtualenv,我需要安装"psycopg2".
我做了以下事情:
pip install http://pypi.python.org/packages/source/p/psycopg2/psycopg2-2.4.tar.gz#md5=24f4368e2cfdc1a2b03282ddda814160
Run Code Online (Sandbox Code Playgroud)
我有以下消息:
Downloading/unpacking http://pypi.python.org/packages/source/p/psycopg2/psycopg2
-2.4.tar.gz#md5=24f4368e2cfdc1a2b03282ddda814160
Downloading psycopg2-2.4.tar.gz (607Kb): 607Kb downloaded
Running setup.py egg_info for package from http://pypi.python.org/packages/sou
rce/p/psycopg2/psycopg2-2.4.tar.gz#md5=24f4368e2cfdc1a2b03282ddda814160
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'.
Complete output from command python setup.py egg_info:
running egg_info
creating pip-egg-info\psycopg2.egg-info
writing pip-egg-info\psycopg2.egg-info\PKG-INFO
writing top-level names to pip-egg-info\psycopg2.egg-info\top_level.txt
writing dependency_links to pip-egg-info\psycopg2.egg-info\dependency_links.txt
writing manifest file 'pip-egg-info\psycopg2.egg-info\SOURCES.txt'
warning: manifest_maker: standard file '-c' not found
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
Storing complete log in C:\Documents and Settings\anlopes\Application Data\pip\p
ip.log
Run Code Online (Sandbox Code Playgroud)
我的问题,我只需要这样做以使psycopg2工作?
python setup.py build_ext --pg-config /path/to/pg_config build ...
Run Code Online (Sandbox Code Playgroud)
joa*_*oar 732
我发现这篇文章正在寻找解决这个问题的Linux解决方案.
"goshawk"这篇文章给了我解决方案:__CODE__如果你在Ubuntu/Debian上运行.
由于越来越多的人发现这个答案很有用并且发布了他们自己的解决方案,这里有一个列表:
sudo apt install libpq-dev python-dev
Run Code Online (Sandbox Code Playgroud)
sudo apt install libpq-dev python3-dev
Run Code Online (Sandbox Code Playgroud)
如果以上都不能解决您的问题,请尝试
sudo apt install build-essential
Run Code Online (Sandbox Code Playgroud)
要么
sudo apt install postgresql-server-dev-all
Run Code Online (Sandbox Code Playgroud)
Ban*_*jer 115
在CentOS上,你需要postgres开发包:
sudo yum install python-devel postgresql-devel
Run Code Online (Sandbox Code Playgroud)
这至少是CentOS 6的解决方案.
met*_*oia 83
在Mac Mavericks上使用Postgres.app版本9.3.2.0 RC2我需要在安装Postgres后使用以下代码:
sudo PATH=$PATH:/Applications/Postgres.app/Contents/Versions/9.3/bin pip install psycopg2
nic*_*har 79
如果你在Mac上,你可以使用自制软件
brew install postgresql
Run Code Online (Sandbox Code Playgroud)
所有其他选项都在这里:http://www.postgresql.org/download/macosx/
祝好运
Pra*_*ota 62
我最近在Windows机器上配置了psycopg2.最简单的安装是使用Windows可执行二进制文件.您可以在http://stickpeople.com/projects/python/win-psycopg/找到它.
要在虚拟环境中安装本机二进制文件,请使用easy_install:
C:\virtualenv\Scripts\> activate.bat
(virtualenv) C:\virtualenv\Scripts\> easy_install psycopg2-2.5.win32-py2.7-pg9.2.4-release.exe
Run Code Online (Sandbox Code Playgroud)
rad*_*tek 27
这对我有用(On RHEL,CentOS:
sudo yum install postgresql postgresql-devel python-devel
Run Code Online (Sandbox Code Playgroud)
现在包含你的postgresql二进制目录的路径与你的pip install:
sudo PATH=$PATH:/usr/pgsql-9.3/bin/ pip install psycopg2
Run Code Online (Sandbox Code Playgroud)
确保包含正确的路径.就这样 :)
更新:对于python 3,请安装python3-devel而不是python-devel
att*_*mos 21
如果您使用的是Mac OS,则应从源代码安装PostgreSQL.安装完成后,您需要使用以下命令添加此路径:
export PATH=/local/pgsql/bin:$PATH
Run Code Online (Sandbox Code Playgroud)
或者你可以像这样追加路径:
export PATH=.../:usr/local/pgsql/bin
Run Code Online (Sandbox Code Playgroud)
在您的.profile文件或.zshrc文件中.
这可能因操作系统而异.
您可以按照http://www.thegeekstuff.com/2009/04/linux-postgresql-install-and-configure-from-source/的安装过程进行操作.
Mic*_*lon 16
到目前为止,答案太像魔术食谱了.您收到的错误告诉您pip无法找到PostgreSQL查询库的必需部分.可能这是因为您将它安装在操作系统的非标准位置,这就是消息建议使用--pg-config选项的原因.
但更常见的原因是您根本没有安装libpq.这通常发生在没有安装PostgreSQL服务器的机器上,因为您只想运行客户端应用程序,而不是服务器本身.每个OS /发行版都不同,例如在Debian/Ubuntu上你需要安装libpq-dev.这允许您针对PostgreSQL查询库编译和链接代码.
大多数答案还建议安装Python开发库.小心.如果您只使用发行版安装的默认Python,那将会有效,但如果您有更新的版本,则可能会导致问题.如果你已经在这台机器上构建了Python,那么你已经拥有了编译C/C++库以与Python接口所需的开发库.只要你使用正确的pip版本,安装在与python二进制文件相同的bin文件夹中的那个版本,那么你就完全了.无需安装旧版本.
小智 16
运行下面的命令,你应该没问题
$ apt-get update
$ apt install python3-dev libpq-dev
$ pip3 install psycopg2
Run Code Online (Sandbox Code Playgroud)
Omi*_*aha 13
上Debian/Ubuntu:
首先安装并构建psycopg2包的依赖关系:
# apt-get build-dep python-psycopg2
Run Code Online (Sandbox Code Playgroud)
然后在您的虚拟环境中编译并安装psycopg2模块:
(env)$ pip install psycopg2
Run Code Online (Sandbox Code Playgroud)
我之前已经在你安装的基础python安装中首先安装了Windows.
然后,手动将已安装的psycopg2复制到virtualenv安装.
它不漂亮,但它的工作原理.
除了安装所需的软件包外,我还需要手动将PostgreSQL bin目录添加到PATH.之前
$vi ~/.bash_profile
添加.PATH=/usr/pgsql-9.2/bin:$PATHexport PATH
$source ~/.bash_profile
$pip install psycopg2
在安装 psycopg2 之前,您需要安装 python-dev 包。
如果您使用 Linux(可能还有其他系统,但我无法从经验中得出结论),您需要确保在安装开发包时非常准确地了解您正在运行的 Python 版本。
例如,当我使用命令时:
sudo apt-get install python3-dev
Run Code Online (Sandbox Code Playgroud)
尝试时我仍然遇到同样的错误
pip install psycopg2
Run Code Online (Sandbox Code Playgroud)
当我使用 python 3.7 时,我需要使用命令
sudo apt-get install python3.7-dev
Run Code Online (Sandbox Code Playgroud)
一旦我这样做了,我就不再遇到问题了。显然,如果您使用的是 Python 3.5 版,您会将 7 更改为 5。
对于 MacOS,
使用下面的命令安装psycopg2,效果很好!!!
env LDFLAGS="-I/usr/local/opt/openssl/include -L/usr/local/opt/openssl/lib" pip install psycopg2
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
319566 次 |
| 最近记录: |