环境:centos7
make时,总是报错:
Rebar dependency crypto could not be loaded for reason {“no such file or directory”,“crypto.app”}
即缺少crypto依赖
原因:
erlang src编译安装过程中,应该是没有先安装openssl-devel;
yum install openssl-devel
而是,直接解压otp_src_22.0.tar.gz,编译,安装;
./configure --with-ssl --enable-threads --enable-smp-support --enable-kernel-poll --enable-hipe --without-javac
./configure --without-ssl --enable-threads --enable-smp-support --enable-kernel-poll --enable-hipe --without-javac (可能是使用了这种方式)
centos7没有安装OpenSSL,后面编译安装erlang时,缺少OpenSSL依赖,就无法编译出crypto.app;
如下是windows上安装erlang otp时,自带的crypto,已经编译好;
如下是centos7上,/usr/local/lib/erlang/lib/crypto-4.5/ebin/crypto.app,如果有OpenSSL,这个目录应该有对应编译好的crypto.app文件,这样,编译emqx时,就能从该目录拷贝该文件;
而编译emqx需要用到crypto功能,crypto.app
参考:
Erlang -- Building and Installing Erlang/OTP
mips64el编译emqx_itas109的专栏-CSDN博客 参照这篇博客,安装openssl-devel后,还需要把erlang src otp重新编译安装一下,才能生成crypto.app文件