Error mix deps.get in Mac



I have a project that needs to run on a Mac machine. I have installed erlang 22.0 and Elixir 1.7.0 using asdf and I have tried to install the dependencies using mix deps.get.


However when I try to run it I get the following error:

(MatchError) no match of right hand side value: {:error, {:ssl, {'no such file or directory', ''}}}

I have tried to fix the issue by following this SO question but it didn’t fix the problem:


How can I fix this ?

In the iex terminal what’s the output of :ssl.start()?

And what version of OTP, 22.0.?? Try to make sure it is 22.0.7.


iex(1)> :ssl.start()
** (UndefinedFunctionError) function :ssl.start/0 is undefined (module :ssl is not available)

So, I should install erlang 22.0.7 with asdf? I’m on it !

1 Like

I would. The fact that :ssl doesn’t exist means it couldn’t bind with the SSL library on your system. As I recall I think Mac’s changed the SSL implementation recently and the very latest OTP’s have support for it or something like that?

1 Like

Yeah last mac update was painful.

Here is what I did to make it work.

  • update asdf
  • update asdf erlang
  • update asdf elixir
  • reinstall tools

Something like this

$ asdf update
$ asdf plugin-update erlang
$ asdf plugin-update elixir

$ asdf list-all erlang
$ asdf list-all elixir

$ asdf install erlang 22.0.7
$ asdf global erlang 22.0.7

$ asdf install elixir 1.9.1-otp-22
$ asdf global elixir 1.9.1-otp-22

$ mix local.hex
$ mix local.rebar

Not to mention I had to update node, yarn and postgresql in the process…


Thank you everyone for the help, it solved the issue!


After long struggle, following Step 2: Parametrized compilation of Erlang in the following link helped me to resolve the issue with ssl and build & install erlang 23.0.2 in mac (Mojave)

1 Like