I've been working the last day or so to get openssl upgraded on my machine. I've followed the answers here and here and now I've got some pretty funny results.

When I type which openssl I get no response.
When I type openssl version I get -bash: openssl: command not found
When I type brew install openssl I get Warning: openssl-1.0.1g already installed.

Why does brew recognize an installation, but my other terminal commands suggest that nothing is installed? What do I need to do to get my system to recognize the installation that brew is seeing, or what do I need to remove to allow me to do a fresh install of openssl?

Edit: 'brew doctor' gives me the following:

Warning: Your XQuartz (2.7.4) is outdated Please install XQuartz 2.7.5: https://xquartz.macosforge.org

Warning: Python is installed at /Library/Frameworks/Python.framework

Homebrew only supports building against the System-provided Python or a brewed Python. In particular, Pythons installed to /Library can interfere with other software installs.

  • What does brew doctor give? – grg Apr 11 '14 at 15:21
  • Post edited to include what is provided by the 'brew doctor' command. – Mike Vezzani Apr 11 '14 at 15:47

This command should show you where any openssl binaries may be located on your system:

locate openssl | grep bin/openssl

For homebrew, make sure you have /usr/local/bin and /usr/local/sbin in your $PATH. You can check your current path setting by issuing echo $PATH.

  • When I run locate I get a warning about the locate database not being created. – dwightk Apr 11 '14 at 17:56
  • ah, then you can run: sudo /usr/libexec/locate.updatedb that will run a complete filesystem sweep of your system and store all information about files and directories in a locate database. You can then run the locate command after it has run to find the openssl files. – VogonPoetLaureate Apr 11 '14 at 18:35
  • There are of course other ways to achieve the same thing. Another is to use spotlight's terminal command: mdfind 'kMDItemFSName=openssl&&kMDItemContentType=public.unix-executable' – VogonPoetLaureate Apr 11 '14 at 18:42

It looks like openssl was installed in /usr/local/Cellar/openssl/1.0.1g/bin/openssl and needed to be symlinked to the desired location. The following command accomplished that for me:

ln -s /usr/local/Cellar/openssl/1.0.1g/bin/openssl /usr/local/bin

After that command was run, 'which openssl' returned "/usr/local/bin/openssl" and 'openssl version' returned "OpenSSL 1.0.1g 7 Apr 2014"

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .