Elixir - OpenSSL might not be installed on this system.
Does this look like a familiar error message?
10:51:54.415 [error] Unable to load crypto library. Failed with error:
":load, Library load-call unsuccessful."
OpenSSL might not be installed on this system.
** (UndefinedFunctionError) undefined function :crypto.strong_rand_bytes/1 (module :crypto is not available)
10:51:54.423 [warn] The on_load function for module crypto returned {:error, {:load, 'Library load-call unsuccessful.'}
This happened after I ran iex -S mix
on an Elixir application to which I added
the uuid
package.
After some searching I was able to verify that this is not a problem with erlang by running:
$ erl
Erlang/OTP 18 [erts-7.2.1] [source] [64-bit] [smp:8:8] [async-threads:10] [hipe] [kernel-poll:false] [dtrace]
Eshell V7.2.1 (abort with ^G)
1> crypto:strong_rand_bytes(16).
<<5,109,149,68,194,186,34,79,49,211,157,89,232,77,149,105>>
The solution? Deleting my _build
directory and compiling it again worked the first time iex -S mix
was run,
but subsequent runs would break it again. The ultimate solution? Re-install Erlang.