Обновление OpenSSL на OS X с помощью Homebrew
Я использую MacOS X 10.7.5, и мне нужна более новая версия OpenSSL из-за сбоев установления связи. В Интернете есть несколько учебников, и я попробовал следующее:
brew install openssl
brew link openssl --force
Тем не менее, это не работает:
openssl version
OpenSSL 0.9.8r 8 Feb 2011
brew unlink openssl && brew link openssl --force
Unlinking /usr/local/Cellar/openssl/1.0.1e... 1139 links removed
Linking /usr/local/Cellar/openssl/1.0.1e... 1139 symlinks created
Проблема SVN также не устранена. Есть идеи? Я бы предпочел не попробовать MacPorts, потому что это может помешать Homebrew.
Ответы
Ответ 1
Если вы используете Homebrew/usr/local/bin, он должен быть уже впереди $PATH
или, по крайней мере, до /usr/bin. Если теперь вы запустите brew link --force openssl
в окне терминала, откройте новый и запустите which openssl
. Теперь он должен показывать openssl
в/usr/local/bin.
Ответ 2
В терминале запустите:
export PATH=/usr/local/bin:$PATH
brew link --force openssl
Возможно, вам придется отключить openssl сначала, если вы получите предупреждение: brew unlink openssl
Это гарантирует, что мы связуем правильный openssl для этой ситуации. (и не возиться с .profile)
Совет шлям для ответа @Olaf и комментарий @Felipe. У некоторых людей, таких как я, возможно, есть некоторые довольно запутанные PATH-вары.
Ответ 3
установлен openssl на mac с brew, но ничего не найдено на /usr/local/bin
, где находятся другие установленные контейнеры brew. Найденный мой новый openssl здесь:
/usr/local/opt/openssl/bin/openssl
Запустите его следующим образом:
/usr/local/opt/openssl/bin/openssl version
Я не хочу обновлять OS X openssl, в то время как некоторые вещи для ОС или другие сторонние приложения могут иметь зависимость от старой версии.
Я также не против более длинного пути, чем просто openssl
Написание этого здесь для всех Googlers, которые ищут местоположение openssl, установленного brew.
Ответ 4
Чтобы ответить на вопрос об обновлении openssl, я выполнил следующие шаги, чтобы успешно обновить версию, найденную на моем Mac, до самой новой версии 1.0.1e для opensl.
Я выполнил следующие шаги: http://foodpicky.com/?p=99
Когда вы достигнете шагов для команд терминала make и сделать установку, обязательно используйте sudo make и sudo make install (мне пришлось пройти шаг за шагом дважды, потому что я сделал это без sudo, и он не обновлялся).
Надеюсь, что это поможет
Ответ 5
У меня возникла эта проблема и я обнаружил, что установка нового openssl
действительно работала, но мой PATH
был установлен неправильно для нее - у моего $PATH
был путь к портам, расположенный перед моим brew, так что он всегда находил более старую версию openssl
.
Исправление для меня состояло в том, чтобы поместить путь к brew
(/usr/local/bin) в начале моей $PATH
.
Чтобы узнать, где вы загружаете openssl
from, запустите which openssl
и обратите внимание на результат. Это будет расположение версии, используемой вашей системой при запуске openssl
. Это будет где-то иначе, чем путь brew
для "/usr/local/bin". Измените $PATH
, закройте эту вкладку терминала и откройте новую и запустите which openssl
. Теперь вы должны увидеть другой путь, возможно, в /usr/local/bin. Теперь запустите openssl version
, и вы увидите новую версию, которую вы установили "OpenSSL 1.0.1e 11 февраля 2013".
Ответ 6
У меня возникли проблемы с установкой некоторых плагинов Wordpress на моем локальном сервере под управлением php56 на OSX10.11. Они не смогли подключиться к внешнему API через SSL.
Установка openSSL не решила мою проблему. Но потом я понял, что CURL также необходимо переустановить.
Это решило мою проблему с помощью Homebrew.
brew rm curl && brew install curl --with-openssl
brew uninstall php56 && brew install php56 --with-homebrew-curl --with-openssl
Ответ 7
- установить порт:
https://guide.macports.org/
- установить или обновить пакет openssl:
sudo port install openssl
или sudo port upgrade openssl
- чтобы он выполнил
openssl version
, чтобы увидеть результат.