From 397d8cff6a3f8d50501f014f2a50b31b778b489a Mon Sep 17 00:00:00 2001 From: Peter Harpending Date: Wed, 24 Sep 2025 15:17:50 -0700 Subject: [PATCH] add installing erlang page --- Home.md | 19 +++++++++---- Installing-Erlang.md | 65 ++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 78 insertions(+), 6 deletions(-) create mode 100644 Installing-Erlang.md diff --git a/Home.md b/Home.md index f5edd8a..65b46b3 100644 --- a/Home.md +++ b/Home.md @@ -1,12 +1,19 @@ # Gajumaru Wiki: Home -## Quick Reference +## Contents + +### IT Support + +- [[Installing Erlang]] + +### Serialization + +- [[API Encoding]]: `ak_...` etc garbage explained +- [[BaseN]]: Given `xy_ABCD`, what is the `ABCD` +- [[RLP]]: If the binary `ABCD` is some data with fields (e.g. a transaction), + how to destructure the binary data to fields +- [[Serializations]]: Conventions for field order in Gajumaru data structures -1. [[API Encoding]]: `ak_...` etc garbage explained -2. [[BaseN]]: Given `xy_ABCD`, what is the `ABCD` -3. [[RLP]]: If the binary `ABCD` is some data with fields (e.g. a transaction), - how to destructure the binary data to fields -4. [[Serializations]]: Conventions for field order in Gajumaru data structures ## Principles diff --git a/Installing-Erlang.md b/Installing-Erlang.md new file mode 100644 index 0000000..80cb474 --- /dev/null +++ b/Installing-Erlang.md @@ -0,0 +1,65 @@ +# Installing Erlang and zx/zomp + +Last updated: September 23, 2025 (PRH). + +## Linux + +### Ubuntu + +Source: [*Building Erlang 26.2.5 on Ubuntu 24.04*](https://zxq9.com/archives/2905) + +Adapt this to your Linux distribution. + +1. **Install necessary build tools** + + ```bash + sudo apt update + sudo apt upgrade + sudo apt install \ + gcc curl g++ dpkg-dev build-essential automake autoconf \ + libncurses-dev libssl-dev flex xsltproc libwxgtk3.2-dev \ + wget vim git + ``` + +2. **Put [Kerl](https://github.com/kerl/kerl) somewhere + in your `$PATH`**. This is a tool to build Erlang releases. + + ```bash + wget -O ~/bin/kerl https://raw.githubusercontent.com/kerl/kerl/master/kerl + chmod u+x ~/bin/kerl + ``` + +3. **Build Erlang from source using Kerl** + + ```bash + kerl update releases + ## use the most recent one that looks stable + ## you do need to type the number twice, that's not a typo + kerl build 28.1 28.1 + kerl install 28.1 ~/.erts/28.1 + ``` + +4. **Put Erlang in your `$PATH`** + + Update .bashrc or .zshrc or whatever with the following line: + + ```bash + . $HOME/.erts/28.1/activate + ``` + + +5. **Install zx** + + ```bash + wget -q https://zxq9.com/projects/zomp/get_zx && bash get_zx + ``` + +6. **Test zx works** + + zx installs itself to `~/bin`, so make sure that's in your + `$PATH`. + + ```bash + zx run erltris + ``` +