Mac上安装Erlang有五种方法:一、Homebrew快速安装稳定版;二、asdf管理多版本;三、源码编译(支持OpenSSL显式链接);四、MacPorts类Linux式安装;五、二进制包解压即用。

如果您希望在Mac系统中安装Erlang语言环境以支持OTP开发或RabbitMQ等依赖组件,则需根据系统架构(Intel或Apple Silicon)、macOS版本及版本管理需求选择适配的安装路径。以下是多种可靠且经验证的安装方法:
一、使用Homebrew直接安装
Homebrew是Mac上最常用的包管理器,适用于快速部署稳定版Erlang,适合多数开发场景,无需手动处理依赖。
1、确保已安装Homebrew:若未安装,执行 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"。
2、更新Homebrew索引:运行 brew update。
3、安装Erlang:执行 brew install erlang。
4、验证安装:输入 erl -version,应输出类似 Erlang/OTP 26 [erts-14.2] 的版本信息。
二、使用asdf多版本管理安装
asdf支持在同一台Mac上共存多个Erlang版本,适用于需要切换OTP版本进行兼容性测试或维护多个项目的开发者。
1、安装asdf:运行 brew install asdf。
2、添加Erlang插件:执行 asdf plugin-add erlang https://github.com/asdf-vm/asdf-erlang.git。
3、安装编译依赖:针对macOS Monterey及后续版本(含M1/M2芯片),需先安装 brew install autoconf automake libtool openssl@1.1 wxmac;若openssl@1.1安装失败,可手动编译安装并建立符号链接至 /usr/local/opt/openssl@1.1。
4、列出可用版本:运行 asdf list-all erlang | grep "25\|26" 筛选主流OTP版本。
5、安装指定版本(如26.2.5):执行 asdf install erlang 26.2.5。
6、设为全局默认或项目本地版本:分别使用 asdf global erlang 26.2.5 或 asdf local erlang 26.2.5。
三、源码编译安装(含OpenSSL显式链接)
该方式提供最高可控性,适用于需定制编译选项、启用特定crypto模块、或解决Homebrew/asdf无法覆盖的兼容性问题(如旧版macOS或特殊硬件驱动要求)。
1、下载Erlang源码包:从 https://github.com/erlang/otp/releases 获取对应OTP版本的tar.gz文件(例如otp_src_26.2.5.tar.gz)。
2、解压并进入目录:执行 tar -xzf otp_src_26.2.5.tar.gz && cd otp_src_26.2.5。
3、确认OpenSSL路径:若已通过Homebrew安装openssl@1.1,其路径通常为 /opt/homebrew/opt/openssl@1.1(Apple Silicon)或 /usr/local/opt/openssl@1.1(Intel)。
4、配置编译参数:运行 ./configure --with-ssl=/opt/homebrew/opt/openssl@1.1 --enable-dynamic-ssl-lib。
5、编译与安装:依次执行 make -j$(sysctl -n hw.ncpu) 和 sudo make install。
6、配置环境变量:编辑 ~/.zshrc,添加 export PATH="/usr/local/bin:$PATH" 并执行 source ~/.zshrc。
7、验证crypto模块:启动Erlang shell后输入 crypto:start().,返回 ok 表示SSL支持正常。
四、使用MacPorts安装
MacPorts是另一套成熟的Unix风格包管理系统,适合习惯类Linux发行版工作流的用户,尤其在需要同步安装大量底层依赖时表现稳定。
1、下载并安装MacPorts:访问 https://www.macports.org/install.php,选择匹配当前macOS版本的pkg安装包。
2、更新Portfile索引:运行 sudo port selfupdate。
3、安装Erlang:执行 sudo port install erlang +ssl(+ssl变体确保启用OpenSSL支持)。
4、激活安装:若存在多个Erlang端口,运行 sudo port select --set erlang erlangXX(XX为实际安装的子版本号,如erlang26)。
5、验证路径:输入 which erl,应返回 /opt/local/bin/erl;再执行 erl -eval 'io:format("~p~n", [erlang:system_info(otp_release)]), halt().' -noshell 输出OTP主版本号。
五、二进制包解压即用安装
适用于无网络权限、离线环境或需快速验证OTP行为的临时开发场景,不涉及系统级写入,所有文件保留在用户目录下。
1、从官网获取预编译二进制包:访问 https://www.erlang.org/downloads,下载macOS对应的 .tar.gz 文件(注意区分Intel与Apple Silicon架构)。
2、解压至用户目录:执行 tar -xzf otp_src_26.2.5-macos-x86_64.tar.gz -C ~/erlang-26.2.5(Apple Silicon请选arm64包)。
3、创建软链接便于调用:运行 ln -sf ~/erlang-26.2.5/erts-14.2/bin/erl ~/bin/erl,并确保 ~/bin 在PATH中。
4、设置OTP库路径:在 ~/.zshrc 中添加 export ERL_LIBS="$HOME/erlang-26.2.5/lib"。
5、加载crypto验证:启动shell后执行 application:ensure_all_started(crypto).,返回 {ok,[crypto]} 即表示运行时环境完整。

















