在OS X上安装openssl

fea*_*ool 8 macos openssl osx-mountain-lion

我进入"certificate verify failed (OpenSSL::SSL::SSLError)"我的ruby应用程序并决定是时候更新Mac OS X(Mountain Lion)系统上的旧openssl了.

我从这里抓住了最新的消息来源并按常规做了

  • ./Configure darwin64-x86_64-cc
  • 使
  • 做测试
  • sudo make install

......一切都完成没有明显的错误.但我注意到新的openssl并没有取代旧的openssl:

$ which openssl
/usr/bin/openssl
$ /usr/bin/openssl version
OpenSSL 0.9.8x 10 May 2012
$ /usr/local/ssl/bin/openssl version
OpenSSL 1.0.1e 11 Feb 2013
Run Code Online (Sandbox Code Playgroud)

我不愿意乱用重要的系统文件,因为害怕破坏现有的东西.推荐的方法是什么?我正在考虑将/ usr/bin/openssl替换为/ usr/local/ssl/bin版本的符号链接.那会有用吗?

Pau*_*rer 9

要通过系统副本确定本地副本的优先级,需要将其添加到shell PATH变量中

export PATH="/usr/local/ssl/bin:$PATH"
Run Code Online (Sandbox Code Playgroud)

如果您希望每次启动shell时都执行此操作,只需将其添加到主目录中的.bash_profile即可.

但是,这不会解决您的问题,因为Ruby需要针对新的OpenSSL进行重新编译(我们假设新的OpenSSL附带的更新的根证书文件会假设解决此问题).我建议安装rvmrbenv并重建ruby.请注意,这两个工具都希望您通过自制软件安装openssl .