Skip to content

hyperledger/besu-native

This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

b7050b6 · Jun 25, 2024
Jun 25, 2024
Jun 25, 2023
Aug 9, 2023
Jul 6, 2023
Jun 25, 2024
Jun 25, 2024
Dec 5, 2022
Jun 3, 2024
Sep 15, 2023
Aug 17, 2023
Aug 16, 2022
May 6, 2024
Jun 4, 2024
Dec 17, 2020
Dec 17, 2020
Apr 8, 2020
Dec 17, 2020
Mar 25, 2024
Dec 7, 2022
Dec 17, 2020
Feb 18, 2021
Jun 25, 2024
Jun 4, 2024
Apr 14, 2020
Apr 14, 2020
Feb 12, 2024
May 3, 2023

Repository files navigation

Besu Native

This repository contains scripts and tooling that is used to build and package the native libraries used by Hyperledger Besu.

Besu Native libraries are licensed unde the Apache 2.0 License.

Prerequisites

Linux

You'll need to be sure that gcc, make, autoconf, automake, and libtool are installed. If you are building on Ubuntu or Debian, the following command will install these dependencies for you:

sudo apt-get install build-essential automake autoconf libtool patchelf

OS X

You'll need to be sure that XCode Command Line Tools, make, autoconf, automake, and libtool are installed. The easiest way to do this is to install Homebrew, and then run the following command. Note that installing Homebrew will automatically install the XCode command line tools.

brew install autoconf automake libtool

Windows

TBD

Rust

Rust needs to be installed to compile the arithmetic and bls12-381 libraries. The default way to install it on Linux or OS X is:

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

If you are Mac M1/M2/M3 you might need to add this after installing rust:

rustup target add x86_64-apple-darwin

If you prefer another installation method please refer to the Rust installation instructions.

Building

  1. This repository builds native libraries from source that is included as git submodules. To be sure that you have cloned those submodules into the appropriate locations, run git submodule init && git submodule update
  2. The build steps are entirely contained within the build.sh script at the repository root. Simply run this script, and all the native modules contained herein will be configured with the correct build options for Hyperledger Besu, and built.