‘openssl/opensslv.h’ file not found

By  on  

Every system update is an adventure when you're a software engineer.  We do everything we can to use virtual machines so that we have (almost) complete control of the environment but sometimes you simply need to work on your host system.  Everything goes great until you update your operating system and boom: you run into an issue you thought you had fixed before.

One such issue is the 'openssl/opensslv.h' file not found problem I get when updating El Capitan.   Each OS update breaks my local dev environment and I have to scramble to get the snippet to fix everything again.  The snippet I need is:

# "'openssl/opensslv.h' file not found"
brew install openssl
brew link openssl --force

That snippet installs openssl and reestablishes the links required for access from anything that wants to use it.

Symbol not found: _BIO_new_CMS

Hand in hand with the original issue is this one whereby cryptography has a fit.  Here's how I fix the _BIO_new_CMS problem:

# Symbol not found: _BIO_new_CMS
pip uninstall cryptography
LDFLAGS="-L/usr/local/opt/openssl/lib" pip install cryptography --no-use-wheel

I found each of these snippets on the third page of a random forum so hopefully having them in one place saves someone a bunch of time!

Recent Features

  • By
    Write Better JavaScript with Promises

    You've probably heard the talk around the water cooler about how promises are the future. All of the cool kids are using them, but you don't see what makes them so special. Can't you just use a callback? What's the big deal? In this article, we'll...

  • By
    Serving Fonts from CDN

    For maximum performance, we all know we must put our assets on CDN (another domain).  Along with those assets are custom web fonts.  Unfortunately custom web fonts via CDN (or any cross-domain font request) don't work in Firefox or Internet Explorer (correctly so, by spec) though...

Incredible Demos

  • By
    Image Data URIs with PHP

    If you troll page markup like me, you've no doubt seen the use of data URI's within image src attributes. Instead of providing a traditional address to the image, the image file data is base64-encoded and stuffed within the src attribute. Doing so saves...

  • By
    CSS Circles

    A while back I shared a clever technique for creating triangles with only CSS. Over the past year, I've found CSS triangles incredibly effective, especially when looking to create tooltips or design elements with a likewise pointer pattern. There's another common shape...

Discussion

  1. Justin

    Thanks for the advice. This resolved missing openssl/opensslv.h

    brew install openssl
    brew link openssl --force
    

Wrap your code in <pre class="{language}"></pre> tags, link to a GitHub gist, JSFiddle fiddle, or CodePen pen to embed!