在 FreeBSD 上构建并安装 ErlangOTP

以下示例显示了在 FreeBSD 上安装 Erlang / OTP 的 3 种主要方法。

方法 1 - 预先构建的二进制包

使用 pkg 安装预构建的二进制包:

$ pkg install erlang

测试新安装:

$ erl
Erlang/OTP 18 [erts-7.3.1] [source] [64-bit] [smp:2:2] [async-threads:10] [hipe] [kernel-poll:false]

Eshell V7.3.1  (abort with ^G)

方法 2 - 使用端口集合构建和安装(推荐)

像往常一样构建和安装端口:

$ make -C /usr/ports/lang/erlang install clean

测试新安装:

$ erl
Erlang/OTP 18 [erts-7.3.1] [source] [64-bit] [smp:2:2] [async-threads:10] [hipe] [kernel-poll:false]

Eshell V7.3.1  (abort with ^G)

这将从官方网站获取发布 tarball,如果需要应用一些补丁,构建版本并安装它。显然,这需要一些时间。

方法 3 - 从发行版 tarball 构建和安装

注意:手动构建版本是可行的,但是应该首选使用上述两种方法,因为端口集合嵌入的补丁使得版本更加 FreeBSD 友好。

下载发布文件:

$ fetch 'http://erlang.org/download/otp_src_18.3.tar.gz'

检查其 MD5 总和是否正确:

$ fetch 'http://erlang.org/download/MD5'
MD5                                           100% of   24 kB  266 kBps 00m00s

$ grep otp_src_18.3.tar.gz MD5
MD5(otp_src_18.3.tar.gz)= 7e4ff32f97c36fb3dab736f8d481830b

$ md5 otp_src_18.3.tar.gz
MD5 (otp_src_18.3.tar.gz) = 7e4ff32f97c36fb3dab736f8d481830b

提取 tarball:

$ tar xzf otp_src_18.3.tar.gz

配置:

$ ./configure --disable-hipe

如果要使用 HiPe 构建 Erlang,则需要应用端口集合中的补丁。

建立:

$ gmake

安装:

$ gmake install

测试新安装:

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

Eshell V7.3  (abort with ^G)

使用 kerl 构建和安装

kerl 是一个帮助你构建和安装 Erlang / OTP 版本的工具。

安装卷曲:

$ make -C /usr/ports/ftp/curl install clean

下载 kerl:

$ fetch 'https://raw.githubusercontent.com/kerl/kerl/master/kerl'
$ chmod +x kerl

更新可用版本列表:

$ ./kerl update releases
The available releases are:
R10B-0 R10B-10 R10B-1a R10B-2 R10B-3 R10B-4 R10B-5 R10B-6 R10B-7 R10B-8 R10B-9 R11B-0 R11B-1 R11B-2 R11B-3 R11B-4 R11B-5 R12B-0 R12B-1 R12B-2 R12B-3 R12B-4 R12B-5 R13A R13B01 R13B02-1 R13B02 R13B03 R13B04 R13B R14A R14B01 R14B02 R14B03 R14B04 R14B R14B_erts-5.8.1.1 R15B01 R15B02 R15B02_with_MSVCR100_installer_fix R15B03-1 R15B03 R15B R16A_RELEASE_CANDIDATE R16B01 R16B02 R16B03-1 R16B03 R16B 17.0-rc1 17.0-rc2 17.0 17.1 17.3 17.4 17.5 18.0 18.1 18.2 18.2.1 18.3 19.0

构建所需的版本:

$ ./kerl build 18.3 erlang-18.3

检查构建列表中是否存在构建:

$ ./kerl list builds
18.3,erlang-18.3

在某处安装构建:

$ ./kerl install erlang-18.3 ./erlang-18.3

如果你正在运行 bash 或鱼壳,请获取 activate 文件。如果你正在运行 cshell,请将构建 bin 目录添加到 PATH:

$ setenv PATH "/some/where/erlang-18.3/bin/:$PATH"

测试新安装:

$ which erl
/some/where/erlang-18.3/bin//erl

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

Eshell V7.3  (abort with ^G)

其他版本

如果要构建另一个版本的 Erlang / OTP,请查找集合中的其他端口:

参考