This is a collection of community-maintained Erlang/OTP binary builds.
Supported operating systems:
darwin(macOS)
Supported architectures:
x86_64aarch64
The goal of these builds is to be as self-contained as possible. OpenSSL (used by crypto app)
and wxWidgets (used by wx app and its dependants, observer, debugger, and et) are
statically linked.
| Target | OpenSSL | wxWidgets |
|---|---|---|
| OTP 25 | ||
x86_64-apple-darwin |
1.1.1w | N/A² |
aarch64-apple-darwin¹ |
1.1.1w | N/A² |
| OTP 26 | ||
*-apple-darwin |
3.1.6 | N/A² / 3.2.5 |
| OTP 27 | ||
*-apple-darwin |
3.1.6 | 3.2.5 |
| OTP maint³ | ||
*-apple-darwin |
3.1.6 | 3.2.5 |
| OTP master³ | ||
*-apple-darwin |
3.1.6 | 3.2.5 |
¹ JIT is disabled on OTP 25 on aarch64-apple-darwin.
² wx, observer, debugger, and et apps are only available since OTP 26.1.1.
³ OTP maint, maint-25, maint-26, maint-27, and master builds are updated daily.
List of builds can be found here:
x86_64-apple-darwin- https://github.com/erlef/otp_builds/raw/main/builds/x86_64-apple-darwin.csvaarch64-apple-darwin- https://github.com/erlef/otp_builds/raw/main/builds/aarch64-apple-darwin.csv
Entries in the list of builds follow this pattern:
{ref_name},{ref},{datetime},{sha256},{openssl_version},{wxwidgets_version}
Where {ref_name} is the Erlang/OTP git tag or branch name, {ref} is the git sha corresponding
to the {ref_name}, {datetime} is the time the build was created and {sha256} is the build
SHA-256 checksum. The {openssl_version} and {wxwidgets_version} are versions that we are
statically linking with.
Example builds/aarch64-apple-darwin.csv entry:
OTP-27.1.2,44ffe8811dfcf3d2fe04d530c6e8fac5ca384e02,2024-10-23T21:02:30Z,9c49d2dc3f0f073b58d7ae9f6cfbcc422dafdb3a85351dcb8efdab3632b4413c,openssl-3.1.6,wxwidgets-3.2.6
Build download URLs follow this pattern:
https://github.com/erlef/otp_builds/releases/download/{ref_name}/otp-{target}.tar.gz
Where {ref_name} is the name of Erlang/OTP release or branch and {target} is the target
triple. Supported branch names are maint-latest, maint-25-latest, maint-26-latest,
maint-27-latest, and master-latest which correspond to Erlang/OTP maint, maint-25,
maint-26, maint-27, and master branches.
Example build URLs:
- https://github.com/erlef/otp_builds/releases/download/master-latest/otp-x86_64-apple-darwin.tar.gz
- https://github.com/erlef/otp_builds/releases/download/OTP-27.0.1/otp-aarch64-apple-darwin.tar.gz
To download from the latest release, use this URL:
After downloading the build you should verify its integrity against builds csv mentioned in the previous section, for example:
curl -fLO https://github.com/erlef/otp_builds/releases/download/OTP-27.1.2/otp-aarch64-apple-darwin.tar.gz
checksum=$(curl -fsSL https://github.com/erlef/otp_builds/raw/main/builds/aarch64-apple-darwin.csv | grep OTP-27.1.2, | cut -d"," -f4)
shasum -a 256 -c <<< "$checksum otp-aarch64-apple-darwin.tar.gz"