Install from Source
HSE can be built and installed from source in a few simple steps.
Tip
Build and install from repo mpool-kmod
, then mpool
, and then hse
.
Install Dependencies
Install dependencies for your platform.
Install the following tools, libraries, and headers.
$ sudo dnf install "@Development Tools" cmake kernel-headers-$(uname -r) kernel-devel-$(uname -r) elfutils-libelf-devel sos rsync libuuid-devel openssl-devel java-1.8.0-openjdk-headless java-1.8.0-openjdk-devel libmicrohttpd libmicrohttpd-devel userspace-rcu userspace-rcu-devel lz4 lz4-devel
Download CMake 3.13.2 or later and install on your system.
Install the following tools, libraries, and headers.
$ sudo apt-get install build-essential libblkid-dev gettext autopoint autoconf bison libtool pkg-config openjdk-8-jdk libmicrohttpd-dev liburcu-dev libyaml-dev liblz4-1 liblz4-dev curl
Download CMake 3.11.4 or later and install on your system.
Install the following tools, libraries, and headers.
$ sudo yum install "@Development Tools" kernel-headers-$(uname -r) kernel-devel-$(uname -r) elfutils-libelf-devel sos rsync libuuid-devel openssl-devel java-1.8.0-openjdk-headless java-1.8.0-openjdk-devel libmicrohttpd libmicrohttpd-devel userspace-rcu userspace-rcu-devel lz4 lz4-devel
Build mpool-kmod Repo
Clone the latest release tag from the mpool-kmod
repo,
which contains the mpool kernel module source.
Releases are named rX.Y.Z
, where X.Y.Z
is the version.
For example
$ git clone https://github.com/hse-project/mpool-kmod.git
$ cd mpool-kmod
$ git checkout rX.Y.Z
Build and install for your platform as follows.
$ make package
$ sudo dnf install ./builds/$(uname -n)/$(uname -r)/rpm/release/kmod-mpool-$(uname -r)-X.Y.Z*.rpm
Note
For release r1.7.1
use package path ./builds/release/
.
$ make package
$ sudo apt-get install ./builds/$(uname -n)/$(uname -r)/deb/release/kmod-mpool-$(uname -r)_X.Y.Z*.deb
Note
Ubuntu requires release r1.8.0
or later.
$ make package
$ sudo yum install ./builds/$(uname -n)/$(uname -r)/rpm/release/kmod-mpool-$(uname -r)-X.Y.Z*.rpm
Note
For release r1.7.1
use package path ./builds/release/
.
Validate mpool Loaded
Validate that the kernel module loaded correctly by confirming that mpool
appears in the output of the lsmod
command. If it does not appear,
try manually loading the kernel module using sudo modprobe mpool
.
If you update your kernel, you will need to re-build and install the mpool kernel module.
Build mpool Repo
Clone the latest release tag from the mpool
repo,
which contains the mpool user-space API and CLI source.
Releases are named rX.Y.Z
, where X.Y.Z
is the version.
For example
$ git clone https://github.com/hse-project/mpool.git
$ cd mpool
$ git checkout rX.Y.Z
Build and install for your platform as follows.
$ make package
$ sudo dnf install ./builds/$(uname -n)/rpm/release/mpool-X.Y.Z*.rpm
$ sudo dnf install ./builds/$(uname -n)/rpm/release/mpool-devel-X.Y.Z*.rpm
Note
For release r1.7.1
use package path ./builds/release*/
.
$ make package
$ sudo apt-get install ./builds/$(uname -n)/deb/release/mpool_X.Y.Z*.deb
$ sudo apt-get install ./builds/$(uname -n)/deb/release/mpool-devel_X.Y.Z*.deb
Note
Ubuntu requires release r1.8.0
or later.
$ make package
$ sudo yum install ./builds/$(uname -n)/rpm/release/mpool-X.Y.Z*.rpm
$ sudo yum install ./builds/$(uname -n)/rpm/release/mpool-devel-X.Y.Z*.rpm
Note
For release r1.7.1
use package path ./builds/release*/
.
Build hse Repo
Clone the latest release tag from the hse
repo,
which contains the HSE source.
Releases are named rX.Y.Z
, where X.Y.Z
is the version.
For example
$ git clone https://github.com/hse-project/hse.git
$ cd hse
$ git checkout rX.Y.Z
Build and install for your platform as follows.
$ make package
$ sudo dnf install ./builds/$(uname -n)/rpm/release/hse-X.Y.Z*.rpm
$ sudo dnf install ./builds/$(uname -n)/rpm/release/hse-devel-X.Y.Z*.rpm
Note
For release r1.7.1
use package path ./builds/release/
.
$ make package
$ sudo apt-get install ./builds/$(uname -n)/deb/release/hse_X.Y.Z*.deb
$ sudo apt-get install ./builds/$(uname -n)/deb/release/hse-devel_X.Y.Z*.deb
Note
Ubuntu requires release r1.8.0
or later.
$ make package
$ sudo yum install ./builds/$(uname -n)/rpm/release/hse-X.Y.Z*.rpm
$ sudo yum install ./builds/$(uname -n)/rpm/release/hse-devel-X.Y.Z*.rpm
Note
For release r1.7.1
use package path ./builds/release/
.