-
Notifications
You must be signed in to change notification settings - Fork 12
Build Rust Kernel
-
Operating System
- Ubuntu 16.04 or Ubuntu 18.04
-
Dependent tools and libraries
- Ubuntu
sudo apt update
sudo apt install g++ gcc libzmq3-dev libjsoncpp-dev python-dev libudev-dev llvm-4.0-dev cmake wget curl git pkg-config lsb-release
## libboost 1.65.0
# Ubuntu 18.04
sudo apt install libboost-all-dev
# Ubuntu 16.04
wget https://dl.bintray.com/boostorg/release/1.65.1/source/boost_1_65_1.tar.bz2
tar xf boost_1_65_1.tar.bz2
cd boost_1_65_1
./bootstrap.sh --libdir=/usr/lib/x86_64-linux-gnu/
./b2
sudo ./b2 install
# Rust 1.28.0
curl https://sh.rustup.rs -sSf | sh -s -- --default-toolchain 1.28.0 --default-host x86_64-unknown-linux-gnu
source $HOME/.cargo/env
-
- protobuf(Optional) Only if you want to modify wallet protobuf message, then you should install Google Protobuf. Make sure protoc is in PATH environment.
Download source code from Release page or clone the repository:git clone http://github.com/aionnetwork/aionr.git
In aionr
directory, run:
./scripts/package.sh <Users_Defined_Package_Name>
to compile code, package the executable binary, settings and quick run scripts into aionr/package/<Users_Defined_Package_Name>
directory, and compress the directory into <Users_Defined_Package_Name>.tar.gz
archive.
The new package should in the directory structure like below:
package/
└── <Users_Defined_Package_Name>/
├── aion # the executable binary
├── custom # custom(solo) network setting directory
│ ├── custom.json # custom(solo) network genesis block file
│ └── custom.toml # custom(solo) network configuration
├── custom.sh # custom(solo) network quick launch script
├── mainnet # mainnet network setting directory
│ ├── mainnet.json # mainnet network genesis block file
│ └── mainnet.toml # mainnet network configuration
├── mainnet.sh # mainnet network quick launch script
├── mastery # mastery network setting directory
│ ├── mastery.json # mastery network genesis block file
│ └── mastery.toml # mastery network configuration
└── mastery.sh # mastery network quick launch script
Go to package/<Users_Defined_Package_Name>
, and go to User Manual.
The configuration and genesis files are generated under each network folder in aionr/package/<Users_Defined_Package_Name>
.
Basic
Kernel Configuration
- Build AionR Kernel
- JSON-RPC APIs Doc
- JSON-RPC APIs Rust vs Java
- Wallet
- Genesis Block
- Configuration File and Command Line Interface
- Log Targets Table
- Aion Seed Nodes
- Migration From 0.1.* to 0.2
DApp Developers
Tutorials