如何为 Python 3.x 安装 psycopg2?
Posted
技术标签:
【中文标题】如何为 Python 3.x 安装 psycopg2?【英文标题】:How do I install psycopg2 for Python 3.x? 【发布时间】:2014-01-18 17:46:52 【问题描述】:几天前刚开始使用 Python,我正在使用 PyCharm 使用 Django 开发 Web 应用程序。我已经安装了 libpq-dev python-dev 软件包,但它仍然给我同样的错误:
./psycopg/psycopg.h:30:20: fatal error: Python.h: No such file or directory
根据 Google 的说法,这是未安装 python-dev 软件包时发生的问题。请注意,我正在从 PyCharm 界面中为我为 3.2 和 3.3 创建的 virtualenv 运行安装(不确定如何从终端运行它)。即使我使用 setup.py 从终端安装它,在 virtualenv 之外安装仍然会引发相同的错误。如果我从终端运行 pip install psycopg2 ,它会成功,但它会为 Python 2.7 安装。根据他们的网站,他们最多支持 Python 3.2。
【问题讨论】:
【参考方案1】:在 Ubuntu 上你只需要运行这个:
sudo apt-get install python3-psycopg2
【讨论】:
不幸的是,当我运行它时,这给了我一个旧版本的 psycopg2。要么是这样,要么由于某种原因它缺少一些额外的东西。【参考方案2】:只需使用终端运行:
$ sudo apt-get install python3-dev
这样,您可以使用 gcc 来构建您尝试使用的模块。
【讨论】:
如果你仔细阅读我的帖子,你会注意到我说我已经安装了 libpq-dev 和 python-dev 包,它适用于 Python 2.7,但不适用于 3.x。 在 Ubuntu 上给出:ImportError: No module named 'ConfigParser' 如果对其他人有帮助,如果您有多个 Python3 版本,您可能需要更加具体。例如。sudo apt-get install python3.7-dev
【参考方案3】:
另一个似乎提供比python3-psycopg2
包中的更新版本的 psycopg2 的选项(至少在我写这篇文章时):
sudo apt-get install pip3
sudo apt-get install libpq-dev
sudo pip3 install psycopg2
【讨论】:
以上是关于如何为 Python 3.x 安装 psycopg2?的主要内容,如果未能解决你的问题,请参考以下文章
如何为 PyPI 组织 Python 模块以支持 2.x 和 3.x