今天,为了安装RabbitMQ,需要安装Erlang,中间遇到了一些坑,记录下来。

1. 下载Erlang安装包

http://www.erlang.org/downloads

http://erlang.org/download/otp_src_18.3.tar.gz

2. otp_src_18.3.tar.gz 拷贝到机器 @m1-cm-uap-srv81.m1,注意,后面的安装需要使用root权限

3. tar zxvf xxx ; cd otp_src_18.3 ; ./configure

可能出现 wx/Java模块缺失的提示,可以忽略

4. make,报错:

drivers/common/inet_drv.c:4033: error: enumerator value for `compile_time_assert__' not integer constant

经过bing(google)之后,尝试修改

vi ./erts/emulator/drivers/common/inet_drv.c,4033行,注释掉以下的assert

//ERTS_CT_ASSERT(sizeof(sctp_assoc_t)==ASSOC_ID_LEN);

5. 重新编译,make,成功

6. 用root权限安装:make install,完成

7. 启动erlang,成功

# erl

Erlang/OTP 18 [erts-7.3] [source] [64-bit] [smp:24:24] [async-threads:10] [hipe] [kernel-poll:false]

Eshell V7.3 (abort with ^G)

1>