Skip to content

KIELE Release - v0.1.0-5ac7eb46436

Compare
Choose a tag to compare
@rv-jenkins rv-jenkins released this 18 Dec 20:35
· 89 commits to master since this release
5ac7eb4

Installing KIELE

We support the following installation methods:

Our most up-to-date packages are available at https://github.com/runtimeverification/iele-semantics/releases.

NOTE: We do not currently support running K on native Windows.
To use K on Windows, you are encouraged to install Windows Subsystem for Linux and follow the instructions for Ubuntu Bionic.

Ubuntu Bionic package

First make sure you have the kframework package installed, see instructions here: https://github.com/kframework/k/releases.

Download the appropriate "Ubuntu Bionic" package from the GitHub, via the Releases page.
Releases are generated as often as possible from master build.
Assuming you have downloaded KIELE version X.Y.Z, install the package with apt:

sudo apt install ./kiele_X.Y.Z_amd64_bionic.deb

Linux binary package

Install the following runtime dependencies:

sudo apt-get install --yes libcrypto++-dev libjemalloc-dev libmpfr-dev libprotobuf-dev libsecp256k1-dev

Download the "KIELE Linux Binary" package from the GitHub, via the Releases page.
Releases are generated as often as possible from master build.

Assuming you have downloaded KIELE version X.Y.Z, extract the tarball:

tar -xvf kiele-X.Y.Z-bin.tar.gz

Copy all the files in the tarball into place:

mkdir -p ~/.local/bin ~/.local/lib
cp -r kiele-X.Y.Z-bin/bin/* ~/.local/bin/
cp -r kiele-X.Y.Z-bin/lib/* ~/.local/lib/

And make sure it's on PATH:

export PATH=$HOME/local/bin:$PATH

Nix

A Nix expression is provided, with binary caching for Linux and macOS.

Prerequisites

It is safe to skip any of these dependencies that are already installed.

Follow the instructions below.
Perform all steps as your normal (non-root) user.
You may find the same instructions and our public key at https://runtimeverification.cachix.org.

curl

Install curl using your distribution's package manager:

# Ubuntu and Debian
sudo apt install curl

# Fedora, RHEL, and CentOS
sudo yum install curl

# Arch Linux
sudo pacman -Sy curl

Nix

Please pay careful attention to any additional instructions printed by the installer.
Install Nix:

# Linux and macOS < 10.15
bash <(curl -L https://nixos.org/nix/install)

# macOS 10.15 (See note below)
bash <(curl -L https://nixos.org/nix/install) --darwin-use-unencrypted-nix-store-volume

For macOS 10.15, please refer to the Nix manual for more information.

Cachix

Install Cachix and start using the binary cache:

nix-env -iA cachix -f https://cachix.org/api/v1/install
cachix use runtimeverification

Install with Nix

With the prerequisites installed,
we can install kiele from any clone of the repository:

git clone https://github.com/runtimeverification/iele-semantics
cd iele-semantics
git submodule update --init --recursive
nix-env -f . -i

Build from source

System Dependencies

The following packages are needed for running KIELE on Ubuntu:

sudo apt-get install --yes autoconf build-essential cmake curl flex gcc   \
                           libcrypto++-dev libffi-dev libmpfr-dev         \
                           libprocps-dev libprotobuf-dev libsecp256k1-dev \
                           libssl-dev libtool make maven netcat opam      \
                           openjdk-8-jdk pkg-config protobuf-compiler     \
                           python3 zlib1g-dev

On MacOS, you need the following:

brew tap homebrew/homebrew-cask homebrew-cask-versions
brew cask install java8
brew install maven opam pkg-config gmp mpfr automake libtool

On all systems, you need Haskell Stack:

curl -sSL https://get.haskellstack.org/ | sh

Build K and KIELE

These commands build and install K and KIELE:

git clone git@github.com:runtimeverification/iele-semantics.git
cd iele-semantics
git submodule update --init --recursive
curl -sSL https://github.com/kframework/k/releases/download/$(cat deps/k_release)/kframework_5.0.0_amd64_bionic.deb
sudo apt-get install --yes ./kframework_5.0.0_amd64_bionic.deb
sudo bash -c 'OPAMROOT=/usr/lib/kframework/opamroot k-configure-opam'
sudo bash -c 'OPAMROOT=/usr/lib/kframework/opamroot opam install --yes ocaml-protoc rlp yojson zarith hex uuidm cryptokit'
export OPAMROOT=/usr/lib/kframework/opamroot
eval $(opam config env)
make COVERAGE=k