Building from source
Last updated
Was this helpful?
Last updated
Was this helpful?
When building from source, you have three options:
Build using Nix, a package manager that keeps your system configuration intact and maintains a minimal set of dependencies
Build with Nix inside a Docker image (doesn’t require you to install nix)
Build using Cargo and the usual Rust build process
All those three methods require you to download Aleph’s code repository:
Install Nix:
Checkout a Testnet or Mainnet aleph-node
tag, see
Use nix to build the node binary:
The binary will be stored as target/release/aleph-node
In order to build a binary for aleph-node
using docker we first need to install docker itself, i.e. in case of the Ubuntu Linux distribution, by executing sudo apt install docker.io
(please consult your distribution's manual describing docker installation procedure). Build procedure can be invoked by running:
Binary will be stored in $(pwd)/aleph-node
This way is not recommended as it can potentially interfere with your system’s configuration but we provide it for the sake of this guide’s completeness.
First of all, you will need some system-level dependencies. These are build dependencies we use in our Linux images for aleph-node
:
Example build procedure using Ubuntu 20.04 LTS and bash shell:
The binary will be located in the target/release
directory in the aleph-node
repository. It is named aleph-node
.
Of course, if you want to build a specific release, you can checkout an appropriate tag after cloning the repository, similarly to the Nix guide above. For example:
Version of the rust toolchain is specified by the file within the aleph-node
repository. You can use to install a specific version of rust, including its custom compilation targets. Using rustup
, it should set a proper toolchain automatically while you call rustup show
within project's root directory.
The best way to find the tag is to use page