I just (in June 2016) ran the following instructions to update Openssl (in /usr/local/openssl) on my Mac, but when I check the version, it's showing that I'm using a version built in 2015 (the System/Library/OpenSSL version).

Question: what can I do to get my Mac (running El Capitain) to use the latest version I installed?

The commands I ran to use the latest version:

cd /usr/local/src
curl --remote-name https://www.openssl.org/source/openssl-1.0.2h.tar.gz
Extract the archive and move into the folder.

tar -xzvf openssl-1.0.2h.tar.gz
cd openssl-1.0.2h
Compile and Install
Configure, compile and install into /usr/local/openssl-1.0.2h.

./configure darwin64-x86_64-cc --prefix=/usr/local/openssl-1.0.2h
make depend
make install
Create a symbolic link that points /usr/local/openssl to /usr/local/openssl-1.0.2h.

ln -s openssl-1.0.2h /usr/local/openssl

When I run openssl version in the terminal, it shows me this output (the important part is that it was built in July 2015 and is the System/Library/Openssl)

openssl version -a
OpenSSL 0.9.8zg 14 July 2015
built on: Jul 31 2015
platform: darwin64-x86_64-llvm
options:  bn(64,64) md2(int) rc4(ptr,char) des(idx,cisc,16,int) blowfish(idx) 
compiler: -arch x86_64 -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -O3 -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -DL_ENDIAN -DMD32_REG_T=int -DOPENSSL_NO_IDEA -DOPENSSL_PIC -DOPENSSL_THREADS -DZLIB -mmacosx-version-min=10.6
OPENSSLDIR: "/System/Library/OpenSSL"
  • /usr/local is not in your PATH variable but /usr/local/bin should be. Try- ln -s openssl-1.0.2h /usr/local/bin/openssl – fd0 Jun 9 '16 at 18:52
  • are you referring to this? ln -s openssl-1.0.2h /usr/local/openssl , so I should try ln -s openssl-1.0.2h /usr/local/bin/openssl? – Michael Jun 9 '16 at 18:54
  • I ran that. when I cd into /usr/local/bin and run openssl it gives me the old version OpenSSL> version OpenSSL 0.9.8zg 14 July 2015 ....even if the version in path was the old version, if I link the new version to /usr/local/bin, would you expect it to run the new or old version if I run openssl from /usr/local/bin? – Michael Jun 9 '16 at 19:00
  • same result after running hash -r and opening new terminal window (and yes I'm using bash) – Michael Jun 9 '16 at 19:26

Determine where the binary file openssl is located.

find /usr/local -name 'openssl*' -exec ls -lFd {} + 

The binary file should have /bin/openssl* at the end of the absolute path. Also open a Finder window to view the file system in the GUI with the command

open /usr/local

Remove any symbolic links that you have created so far then make a new symbolic link to /usr/local/bin/openssl.

This thread also has helpful details on openssl options and managing your path to select an alternate version.

You must log in to answer this question.

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