While installing bench on OSX. This issue came up. Now I am not able to install anything using pip on python. How to deal with this problem please help.

import requests
File “/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/requests/”, line 53, in
from .packages.urllib3.contrib import pyopenssl
File “/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/requests/packages/urllib3/contrib/”, line 54, in
import OpenSSL.SSL
File “/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/OpenSSL/”, line 8, in
from OpenSSL import rand, crypto, SSL
File “/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/OpenSSL/”, line 12, in
from OpenSSL._util import (
File “/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/OpenSSL/”, line 6, in
from cryptography.hazmat.bindings.openssl.binding import Binding
File “/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/cryptography/hazmat/bindings/openssl/”, line 250, in
File “/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/cryptography/hazmat/bindings/openssl/”, line 230, in _verify_openssl_version
"You are linking against OpenSSL 0.9.8, which is no longer "
RuntimeError: You are linking against OpenSSL 0.9.8, which is no longer support by the OpenSSL project. You need to upgrade to a newer version of OpenSSL.

yeah your OpenSSL is too old and out of support. try updating it using Macports or Homebrew

@ganas @rushabh_mehta I had update openssl already. When i run “openssl version” it shows openssl 1.0.2g but python is using openssl 0.9.8. I have tried some solutions from stackoverflow but it did not work. My other projects are also not running now because of this error. please help!

I’ll try my best here. Ok let use brew package manager, so install it
/usr/bin/ruby -e "$(curl -fsSL"
now lets update
brew update
Now install OpenSSL
brew install openssl
now link
brew link openssl --force
now we install latest python with brewed openssl
brew install python --with-brewed-openssl
Now Edit Your PATH Environment Variables and remove python if it exist, the easiest way is
echo $PATH and copy it’s value
export PATH=""
export PATH="/path/you/want/to/keep"
now we create a link for the new installed python, however, let’s back up old python if exist
mv /usr/local/bin/python /usr/local/bin/python_old
now create new link
sudo ln -s /usr/local/Cellar/python/2.7.12/bin/python /usr/local/bin/python
brew unlink openssl --force --overwrite python && brew link openssl --force --overwrite python

now check Python version
python --version
Python 2.7.12
python -c "import ssl; print ssl.OPENSSL_VERSION"
OpenSSL 1.0.2h 3 May 2016

I hope this detailed step by step helps you

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.