Обновление 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, потому что это может помешать домашнему пиву.
8 ответов:
если вы используете Homebrew / usr / local / bin уже должны быть в передней части
$PATHили, по крайней мере, перед / usr / bin. Если вы сейчас запуститеbrew link --force opensslв окне терминала откройте новый и запуститеwhich opensslв нем. Теперь он должен показатьopensslпод / usr / local / bin.
в терминале выполните:
export PATH=/usr/local/bin:$PATH brew link --force opensslвозможно, вам придется сначала отключить openssl, если вы получите предупреждение:
brew unlink opensslэто гарантирует, что мы связываем правильный openssl для этой ситуации. (и не связывается с ним .профиль)
наконечник шляпы к ответу @Olaf и комментарию @Felipe. Некоторые люди - такие как я-могут иметь некоторые довольно запутанные пути Варс.
установлен 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пишу это здесь для всех гуглеров, которые ищем расположение openssl, установленного brew.
у меня была эта проблема и обнаружил, что установка более новой
opensslдействительно работал, но мойPATHбыла неправильно настроена для него -- my$PATHесли бы путь портов был помещен перед моим путем brew, чтобы он всегда находил более старую версиюopenssl.исправление для меня было поставить путь к
brew(/usr/local / bin) в передней части моего$PATH.чтобы узнать, где вы загружаете
opensslс, запуститьwhich opensslи обратите внимание на выход. Это будет расположение версия, которую ваша система использует при запускеopenssl. Его будет где-то кромеbrewпуть "/ usr / local / bin". Измените свой$PATH, закройте эту вкладку терминала и откройте новый, и запуститеwhich openssl. Теперь вы должны увидеть другой путь, вероятно, под /usr/local / bin. Теперь бегиopenssl versionи вы должны увидеть новую версию, которую вы установили "OpenSSL 1.0.1 e 11 Feb 2013".
чтобы ответить на ваш вопрос об обновлении openssl, я выполнил следующие шаги, чтобы успешно обновить версию, найденную на моем Mac, до самой новой версии openssl 1.0.1 e.
я следовал инструкциям, найденным здесь:http://foodpicky.com/?p=99
когда вы достигнете шагов для команд терминала сделать и установка обязательно используйте sudo make и sudo make install (Я должен был пройти через шаг за шагом дважды, потому что я сделал это без sudo, и он не обновлялся).
надеюсь, что это помогает
У меня были проблемы с установкой некоторых плагинов Wordpress на моем локальном сервере под управлением php56 на OSX10.11. Они не смогли подключиться к внешнему API через SSL.
установка openSSL не решила мою проблему. Но потом я понял, что CURL также необходимо переустановить.
это решило мою проблему с помощью доморощенного.
brew rm curl && brew install curl --with-openssl brew uninstall php56 && brew install php56 --with-homebrew-curl --with-openssl
на mac OS X Yosemite, после установки его с brew он поместил его в
/usr / local/opt/openssl/bin / openssl
но продолжал получать сообщение об ошибке "Linking keg-only openssl означает, что вы можете в конечном итоге связать с небезопасным" при попытке связать его
поэтому я просто связал его, поставив полный путь, как так
ln -s /usr/local/opt/openssl/bin/openssl /usr/local/bin/opensslтеперь он показывает версию OpenSSL 1.0.2 o когда я делаю "openssl version-a", я предполагаю, что это сработало