Почему homebrew устанавливает все в /opt/homebrew/Cellar, а мой проект python ищет все в /usr/local
Я новичок в macos, использую Monterey на M2 macbook Air,
и испытываю трудности с удовлетворением зависимостей для проекта django.
Чтобы все было чисто и просто,
я собрал python 3.8 из исходников,
--with-openssl=/also/built/from/source
,
создал виртуальную среду (bin/python -m venv django
),
вошел с помощью source ./django/bin/activate
,
и установил проект requirements.txt
.
После запуска проекта я продолжаю сталкиваться с ошибками отсутствия библиотек, такими как
'/usr/local/lib/libssl.1.1.dylib' (no such file)
'/usr/local/lib/libcairo.2.dylib' (no such file)
'/usr/local/lib/libffi.8.dylib' (no such file)
и т.д.
Хотя, например, в случае с libssl,
я ожидал, что python будет знать местоположение пользовательской сборки openssl,
я пошел дальше и установил эти системные зависимости с помощью
brew install openssl@1.1 cairo libffi
и т.д.
но ошибки сохранялись до тех пор, пока я не связал (ln -s
) каждую библиотеку от
/opt/homebrew/Cellar/libffi/3.4.2/lib/libffi.8.dylib
к /usr/local/lib/libffi.8.dylib
.
Почему все это происходит? Почему homebrew не заполняет статический путь к библиотеке?