я бегу
sudo pip install psycopg2
и я получаю кучу результатов, которые выглядят так:
cc -DNDEBUG -g -fwrapv -Os .....
.....
cc -DNDEBUG -g -fwrapv -Os .....
.....
И в конце говорится:
ld: library not found for -lssl
clang: error: linker command failed with exit code 1 (use -v to see invocation)
error: command 'cc' failed with exit status 1
----------------------------------------
Cleaning up...
Command /usr/bin/python -c "import setuptools, tokenize;__file__='/private/var/folders/bz/pvj1g9xj16d10pjjgbrfl3fw0000gn/T/pip_build_root/psycopg2/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /var/folders/bz/pvj1g9xj16d10pjjgbrfl3fw0000gn/T/pip-uE3thn-record/install-record.txt --single-version-externally-managed --compile failed with error code 1 in /private/var/folders/bz/pvj1g9xj16d10pjjgbrfl3fw0000gn/T/pip_build_root/psycopg2
Storing debug log for failure in /Users/Tyler/Library/Logs/pip.log
Запуск easy_install или выполнение из исходного кода дают мне ту же ошибку в конце (часть о библиотеке, не найденной для -lssl).
Запуск brew install (или upgrade) openssl дает следующее
$ brew upgrade openssl
Error: openssl-1.0.1h already installed
Может кто-нибудь мне помочь?
python
postgresql
psycopg2
tscizzle
источник
источник
Ответы:
Для тех, кто ищет решение этой проблемы в macOS Sierra 10.12 (или более поздней версии, скорее всего): я исправил это, установив инструменты командной строки:
После этого
pip install psycopg2
должно работать.Если это не так, вы также можете попытаться создать ссылку на openssl brew:
с openssl, установленным через brew. Обратите внимание, что
brew link openssl --force
больше не работает:Как указывает @macho ниже, если это все еще не работает, вам может потребоваться использовать
--no-cache
опцию pip, напримеристочник
xcode-select --install
может быть достаточно, для этого следует использовать предоставленную системуssl
. Я обновлю свой комментарий выше.pip install psycopg2
что получил и только что получил то же сообщение об ошибке: «ld: library not found for -lssl».xcode-select --install
исправил проблему.xcode-select --install
исправлена проблема с Sierra для меня, также для виртуальных средenv LDFLAGS="-I/usr/local/opt/openssl/include -L/usr/local/opt/openssl/lib" pip --no-cache install psycopg2
У меня был установлен OpenSSL из brew (
brew install openssl
)У меня сработало следующее:
источник
При запуске
brew link openssl
получаю следующее сообщение:Следуя этому совету,
pip
вам нужно использовать следующую команду:источник
В MacOS Catalina 10.15.4 у меня работала единственная команда:
источник
Что сработало для меня, так это подсказка, указанная в команде для связывания openssl,
источник
В Мохаве я добавил их в .bash_profile
затем смог установить psycopg 2.8.3 в виртуальный сервер python 3.7.4.
Это после переустановки xcode и инструментов командной строки.
Все ответы выше помогли!
источник
Это проблема новой версии macOs, где pip не может быть установлен
cryptography
. Моя проблема была решена путем предоставления env команде установки:Вы можете заменить
<YOUR COMMAND HERE>
наpip install cryptography
, или,pip install <SOMETHING THAT REQUIRES cryptography>
например.Кредит на эту статью: Исправление фатальной ошибки macOS Sierra: файл openssl / opensslv.h или openssl / aes.h не найден
источник
Используя Fish, следующие две команды решили эту проблему для меня после установки OpenSSL с Homebrew.
Используйте
brew info openssl
для получения актуальной информации.источник
Недавно возникла эта проблема в High Sierra, только что установив Python 3.7 в virtualenv.
Решение - использовать более позднюю версию psycopg2. Версия 2.7.7 работала, а 2.7.1 - нет.
источник
Вместо установки
psycopg2
установитеpsycopg2-binary
, от тех же авторов:Вот что говорится в документации об этом пакете PyPI:
источник
У меня была эта проблема в Мохаве. Mojave не создает каталог / usr / include, который нужно установить psycopg2. Это было неочевидно. Я нашел решение здесь: Как обновить Xcode из командной строки , которая ссылается: https://forums.developer.apple.com/thread/104296
источник
У меня была такая же ошибка, и я решил ее разрешить после того, как я установил cython
источник
Запуск PyCharm из среды conda решил мою проблему, используя:
источник
Я установил OpenSSL с помощью MacPorts, поэтому каталоги не похожи на каталоги Brew.
Я нашел каталоги, выполнив:
Затем я экспортировал переменные:
Возможно, вам также придется:
источник
export LIBRARY_PATH=$LIBRARY_PATH:/usr/local/opt/openssl/lib/
работал на меня
источник
Мне удалось это исправить, используя:
Я не уверен, чем это отличается от удаления / обновлений brew, которые я делал на OpenSSL в предыдущих попытках. Я предполагаю, что в результате этих операций остались некоторые из «неисправных» разделяемых библиотек, которые мешали этому работать. Обратите внимание, что это также устранило проблемы с установкой модуля криптографии python.
источник