在centos中使用kerl安装erlang时发生加密错误



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

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

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

我是这样做的:无法在cent-os上安装erlang,但失败

如果我这样做了,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

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

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

1> application:start(crypto).
ok

您可以尝试从ErlangSolutions下载预编译版本吗?否则,您将需要找出kerl没有使用OpenSSL的原因(如果已安装)。也许可以尝试验证configure或编译日志。

最新更新