‘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
    fetch API

    One of the worst kept secrets about AJAX on the web is that the underlying API for it, XMLHttpRequest, wasn't really made for what we've been using it for.  We've done well to create elegant APIs around XHR but we know we can do better.  Our effort to...

  • By
    Welcome to My New Office

    My first professional web development was at a small print shop where I sat in a windowless cubical all day. I suffered that boxed in environment for almost five years before I was able to find a remote job where I worked from home. The first...

Incredible Demos

  • By
    Drag and Drop MooTools File Uploads

    Honesty hour confession:  file uploading within the web browser sucks.  It just does.  Like the ugly SELECT element, the file input is almost unstylable and looks different on different platforms.  Add to those criticism the fact that we're all used to drag and drop operations...

  • By
    MooTools Wall Plugin

    One of the more impressive MooTools plugins to hit the Forge recently was The Wall by Marco Dell'Anna.  The Wall creates an endless grid of elements which can be grabbed and dragged, fading in elements as they are encountered.  Let me show...

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!