Heron can currently be built on the following Linux platforms:
To build Heron on a fresh Ubuntu 18.04 installation:
$ sudo apt-get update -y $ sudo apt-get upgrade -y
$ sudo apt-get install git build-essential automake cmake libtool-bin zip \ libunwind-setjmp0-dev zlib1g-dev unzip pkg-config python-setuptools -y
export CC=/usr/bin/gcc export CCX=/usr/bin/g++
$ sudo add-apt-repository ppa:webupd8team/java $ sudo apt-get update -y $ sudo apt-get install openjdk-11-jdk-headless -y $ export JAVA_HOME="/usr/lib/jvm/java-11-openjdk-amd64"
wget -O /tmp/bazel.sh https://github.com/bazelbuild/bazel/releases/download/0.26.0/bazel-0.26.0-installer-linux-x86_64.sh chmod +x /tmp/bazel.sh /tmp/bazel.sh --user
Make sure to download the appropriate version of Bazel (currently {{% bazelVersion %}}).
$ sudo apt-get install python-dev python-pip
PATH
$ export PATH="$PATH:$HOME/bin"
$ git clone https://github.com/apache/incubator-heron.git && cd heron
$ ./bazel_configure.py
$ bazel build --config=ubuntu heron/...
$ bazel build --config=ubuntu scripts/packages:binpkgs $ bazel build --config=ubuntu scripts/packages:tarpkgs
This will install Heron packages in the bazel-bin/scripts/packages/
directory.
If you encounter errors with libunwind, libtool, or gperftools, we recommend installing them manually.
$ wget http://ftpmirror.gnu.org/libtool/libtool-2.4.6.tar.gz $ tar -xvf libtool-2.4.6.tar.gz $ cd libtool-2.4.6 $ ./configure $ make $ sudo make install
$ wget http://download.savannah.gnu.org/releases/libunwind/libunwind-1.1.tar.gz $ tar -xvf libunwind-1.1.tar.gz $ cd libunwind-1.1 $ ./configure $ make $ sudo make install
$ wget https://github.com/gperftools/gperftools/releases/download/gperftools-2.5/gperftools-2.5.tar.gz $ tar -xvf gperftools-2.5.tar.gz $ cd gperftools-2.5 $ ./configure $ make $ sudo make install
To build Heron on a fresh CentOS 7 installation:
$ sudo yum install gcc gcc-c++ kernel-devel wget unzip zlib-devel zip git automake cmake patch libtool -y
$ wget http://download.savannah.gnu.org/releases/libunwind/libunwind-1.1.tar.gz $ tar xvf libunwind-1.1.tar.gz $ cd libunwind-1.1 $ ./configure $ make $ sudo make install
$ export CC=/usr/bin/gcc $ export CCX=/usr/bin/g++
$ sudo yum install java-11-openjdk java-11-openjdk-devel $ export JAVA_HOME=/usr/lib/jvm/java-11-openjdk
wget -O /tmp/bazel.sh https://github.com/bazelbuild/bazel/releases/download/0.26.0/bazel-0.26.0-installer-linux-x86_64.sh chmod +x /tmp/bazel.sh /tmp/bazel.sh --user
Make sure to download the appropriate version of Bazel (currently {{% bazelVersion %}}).
$ git clone https://github.com/apache/incubator-heron.git && cd heron $ ./bazel_configure.py $ bazel build --config=centos heron/...
$ bazel build --config=centos scripts/packages:binpkgs $ bazel build --config=centos scripts/packages:tarpkgs
This will install Heron packages in the bazel-bin/scripts/packages/
directory.