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"

Your Answer

By clicking "Post Your Answer", you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.