使用Python版本:Python3.11
在本机上安装:python3.11 -m pip install psycopg2
报错如下:
Looking in indexes: https://mirrors.aliyun.com/pypi/simple
Collecting psycopg2
Using cached https://mirrors.aliyun.com/pypi/packages/c9/5e/dc6acaf46d78979d6b03458b7a1618a68e152a6776fce95daac5e0f0301b/psycopg2-2.9.9.tar.gz (384 kB)
Preparing metadata (setup.py) ... error
error: subprocess-exited-with-error× python setup.py egg_info did not run successfully.
│ exit code: 1
╰─> [23 lines of output]
..........note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed× Encountered error while generating package metadata.
╰─> See above for output.note: This is an issue with the package mentioned above, not pip.
hint: See above for details.
官方安装教程:psycopg2 · PyPI
根据官网说明:
安装构建 psycopg2 需要一些依赖条件:C编译器和一些开发软件包
如果有这些条件在,可以正常安装,否则会报错如上图展示的
如果安装失败,官方也提供了另一个安装方案:
通过从PyPI安装psycopg2-binary包,可以获得一个独立的包,不需要编译器或外部库
将 psycopg2 包替换成 psycopg2-binary
# 具备安装条件
$ pip install psycopg2
# 取代 psycopg2
$ pip install psycopg2-binary
开源项目中有 psycopg2 包要安装的,我尝试替换安装psycopg2-binary,可以正常运行!!!