2

我一直在尝试通过kerl安装erlang16。我收到以下错误:

 Uncaught error in rebar_core: {'EXIT',
 {undef,
 [{crypto,start,[],[]},

这是很多人之前遇到的一个问题,但这些解决方案都不适合我。

我是按照这个做的: Unable to install erlang on cent os but failed

如果我这样做了,crypto:start(),它不会返回我。有人可以帮忙吗。谢谢

错误信息:

  1> crypto:start().
  ** exception error: undefined function crypto:start/0
  2> 
  =ERROR REPORT==== 2-Apr-2016::07:28:13 ===
  Unable to load crypto library. Failed with error:
  "load_failed, Failed to load NIF library: 
 '/usr/local/lib/erlang/lib/crypto-       3.0/priv/lib/crypto.so: undefined  symbol: EC_GROUP_new_curve_GF2m'"
  OpenSSL might not be installed on this system.

  =ERROR REPORT==== 2-Apr-2016::07:28:13 ===
  The on_load function for module crypto returned {error,
                                             {load_failed,
                                              "Failed to load NIF library:  '/usr/local/lib/erlang/lib/crypto-3.0/priv/lib/crypto.so: undefined symbol: EC_GROUP_new_curve_GF2m'"}}

这样做很好:

 Eshell V5.10.2  (abort with ^G)
 1> application:start(crypto).
 ok
4

1 回答 1

1

您的 Erlang 是在没有 OpenSSL 的情况下构建的。从源代码构建 Erlang 时,未安装或启用 OpenSSL。构建应用程序需要 OpenSSL crypto。请参阅Erlang 安装指南

并且检查是否crypto已构建的最简单方法就是像您所做的那样,尝试启动crypto.

1> application:start(crypto).
ok

您可以尝试从Erlang Solutions下载预编译版本吗?否则,您将需要找出为什么kerl不选择 OpenSSL(如果已安装)。也许尝试验证configure或编译日志。

于 2016-04-01T23:14:09.893 回答