在 OS Big Sur i.c.w 上加载 psycopg2 模块时出错。苹果硅

Posted

技术标签:

【中文标题】在 OS Big Sur i.c.w 上加载 psycopg2 模块时出错。苹果硅【英文标题】:Error loading psycopg2 module on OS Big Sur i.c.w. Apple Silicon 【发布时间】:2021-03-11 17:58:39 【问题描述】:

尝试在装有 OS 11/Big Sur 的新 Apple Silicon 机器上安装 Django 项目。 当我尝试运行 manage.py 命令时,出现以下错误:

/venv/lib/python3.8/site-packages/django/db/backends/postgresql/base.py", line 29, in <module>
    raise ImproperlyConfigured("Error loading psycopg2 module: %s" % e)
django.core.exceptions.ImproperlyConfigured: Error loading psycopg2 module: dlopen(removed/venv/lib/python3.8/site-packages/psycopg2/_psycopg.cpython-38-darwin.so, 2): Symbol not found: _PQbackendPID
  Referenced from: removed/venv/lib/python3.8/site-packages/psycopg2/_psycopg.cpython-38-darwin.so
  Expected in: flat namespace

我在 Postgres.app 中安装了 postgres

尝试了各种方法。 f.i. 在 /usr/local/lib 中设置以下符号链接

libpq.5.dylib -> /Applications/Postgres.app/Contents/Versions/latest/lib/libpq.5.13.dylib

安装 psycopg2-binary 给了我其他错误。

到目前为止,还没有运气。不知道是因为 OS11 还是新的 Silicon。

【问题讨论】:

【参考方案1】:

我也遇到了和你一样的事情。使用默认终端甚至使用 Visual Studio Code Terminal 路由到 zsh 也会失败。 https://i.stack.imgur.com/4dK8w.png

我终于可以使用 iTerm 但使用 Rosetta 运行 python manage.py runserver

https://i.stack.imgur.com/t3mlU.png

https://i.stack.imgur.com/6kfWU.png

【讨论】:

以上是关于在 OS Big Sur i.c.w 上加载 psycopg2 模块时出错。苹果硅的主要内容,如果未能解决你的问题,请参考以下文章

在 Mac OS Big Sur 11.0.1 上使用 anaconda 安装 Torch 时出现 PackagesNotFoundError

Mac OS X Big Sur 上 webstart 的 JDialog 全屏问题

Android Studio Emulator : Unhandled exit 1d (Mac OS : Big Sur Beta)

mac Big Sur 芯片m1上安装ps,窗口里没有扩展,用不了插件了怎么办?

如何在 Mac OS Big Sur 中更改 xampp htdocs 目录

我的鱼瞎了? (在 Mac OS Big Sur、M1 Mac 上将其设置为默认 shell 后,fish 无法识别任何命令)