linux 下安装rabbitmq 踩坑记录
一. 启动rabbitmq 提示异常
Unable to load crypto library. Failed with error:
"load_failed, Failed to load NIF library: '/usr/local/erlang/lib/crypto/priv/lib/x86_64-unknown-linux-gnu/crypto.so: undefined symbol: EVP_chacha20'"
OpenSSL might not be installed on this system.
<0.185.0> CRASH REPORT Process <0.185.0> with 0 neighbours exited with reason: call to undefined function crypto:strong_rand_bytes(128) in application_master:init/4 line 138
环境:centos7.5
openssl版本:openssl-1.1.1g
erlang版本:otp_src_22.3.tar.gz
rabbitmq版本: rabbitmq-server-3.8.3.tar.xz
根据提示,应该是说erlang里有某一个方法使用了 openssl的内容,但是当前openssl中没有这个内容
解决方式:
1. 进入openssl所在文件夹 /usr/local/openssl-1.1.1g (根据实际安装情况来)
输入: ./config shared
2. 在当前目录执行 make && make install 重新打包安装
3. 切换到 erlang 所在目录 /usr/local/erlang (根据实际安装情况来)
4. 输入 make clean 清除在erlang目录下上次的make命令所产生的object文件(后缀为“.o”的文件)及可执行文件。
5. 重新编译安装 erlang ,输入: make && make install
6. 输入 erl, 验证 crypto:start(). 是否可以执行
内容来自于:安装rabbitmq过程中的麻烦 - 嘟嘟老鼠窝 - OSCHINA - 中文开源技术交流社区