You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Mac M2环境下Django项目psycopg2安装及运行报错求助

问题解决:Django + psycopg2 在M2 Mac上的安装报错

先搞懂psycopg2是什么

psycopg2是Python连接PostgreSQL数据库的官方驱动,你的Django项目配置了PostgreSQL作为数据库,必须安装它才能正常启动服务。

报错原因

你使用的是M2 Mac(ARM架构),而psycopg2 2.9.5的源码包不支持PEP 517构建规范;同时ARM环境下编译源码包需要依赖PostgreSQL的系统库,未提前安装的话就会触发编译失败。

解决步骤

  1. 安装系统依赖
    用Homebrew安装PostgreSQL的依赖库,为后续编译提供必要的头文件和库文件:
brew install libpq
brew link libpq --force
  1. 替换为预编译版本
    修改项目依赖文件(比如pyproject.toml),把psycopg2==2.9.5替换为psycopg2-binary==2.9.5。psycopg2-binary是预编译好的二进制包,不需要本地编译,完美适配ARM架构,同时支持PEP 517构建规范。

  2. 重新安装依赖
    执行项目的安装命令:

make install

或者直接用Poetry命令:

poetry install
  1. 验证虚拟环境(可选)
    确保Poetry虚拟环境使用的是ARM版本的Python,M2 Mac偶尔会残留x86架构的Python环境:
poetry run python -c "import platform; print(platform.machine())"

输出应为arm64,如果是x86_64,需要重新创建基于ARM Python的虚拟环境。

  1. 启动服务
    现在重新运行启动命令:
make runserver

Django服务应该能正常启动了。

内容的提问来源于stack exchange,提问作者Nyi Nyi Hmue Aung

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.29 03:42:49