How to Build Kepler - keplernetwork/kepler GitHub Wiki

How to build Kepler

Building Kepler isn't difficult, however, it does require a series of requisites and steps which we will review and follow in this tutorial.

OS and Rust Version Supported for building Kepler:

  • Linux (64bit only)
  • MacOS
  • Rust 1.35+

Installing Rust

The best method for installing rust on Linux/Mac/FreeBSD is by using Rustup: https://rustup.rs/

  1. Open a terminal

  2. Paste the following (you can find this information on the Rustup website)

    curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
    
  3. Select default options on the installer and press enter

After Rustup is installed, loging out and logging in again will allow you to use Rust and Cargo from the terminal. If you're in a hurry, you can paste this on your terminal after installing:

 source $HOME/.cargo/env

Dependencies for Linux

Below are Debian Linux dependencies, these may vary depending on which Distribution you're using

sudo apt install build-essential git clang libncurses-dev zlib1g-dev cmake libgit2-dev clang libncurses5-dev libncursesw5-dev zlib1g-dev pkg-config libssl-dev llvm

Dependencies for MacOS

  1. Install XCode from the App store, once installed, open a terminal and type

    xcode-select --install
    
  2. Install homebrew

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

After homebrew finishes installing:

brew install pkg-config openssl

Building Kepler

We have two options for building Kepler:

  • Direct from Github:
git clone https://github.com/keplernetwork/kepler && cd kepler
cargo build release
  • From a release, choose the most recent version here and download the source:

    https://github.com/keplernetwork/kepler/releases
    
    • Decompress the file you downloaded
    • Open the terminal
    • Go into the decompressed folder
    cargo build --release
    

    When Kepler finishes building, you'll find the executable in target/release/kepler

    You can run it by typing on your terminal:

    target/release/kepler
    

    Kepler will now begin to sync.