Bash-скрипт выдает ошибку psycopg2: символ не найден в плоском пространстве имен (_PQbackendPID)?

Я использую Apple M1. Вот сценарий bash, который я написал.

#!/bin/sh

# Open Activity Tracker website
python -m webbrowser http://127.0.0.1:8000/

# Activate virtual environment
. dj-env/bin/activate

# Navigate to Activity Tracker project folder
cd dj_activity_tracker

# Run Django local development server
python manage.py runserver

Когда я запускаю эти команды на терминале вручную без скрипта, они работают. Однако, когда я использую этот сценарий, я получаю ошибку:


File "/Users/doge/Desktop/dj-env/lib/python3.11/site-packages/django/db/backends/postgresql/base.py", line 28, in \<module\>
raise ImproperlyConfigured("Error loading psycopg2 module: %s" % e)
django.core.exceptions.ImproperlyConfigured: Error loading psycopg2 module: dlopen(/Users/doge/Desktop/dj-env/lib/python3.11/site-packages/psycopg2/\_psycopg.cpython-311-darwin.so, 0x0002): symbol not found in flat namespace (\_PQbackendPID)

То, что я пробовал:

  • Uninstall/reinstall psycopg2
  • brew install postgresql

Я в тупике, как это работает вручную, но не работает, когда я запускаю скрипт. В чем может быть проблема? Я ценю вашу поддержку.

Вернуться на верх