Build on macOS

This document describes how to build NebulaStream on macOS.

💡 NebulaStream has been tested on macOS Big Sur and Monterey and on Intel and Apple Silicon Macs.

⚠️ The build on Apple Silicon Macs is still experimental.

Step 1: Install Required Dependencies

💡 These instructions assume that you install dependencies with Homebrew.

brew install cmake clang-format graphviz doxygen

Step 2: Clone the NebulaStream Github Repository

💡 Contact us to get access to the NebulaStream source repository on Github.

git clone git@github.com:nebulastream/nebulastream.git

Step 3: Build NebulaStream

cd /path/to/nebulastream
mkdir -p build
cd build
cmake -DNES_BUILD_DEPENDENCIES_LOCAL=0 ..   # Use -DNES_BUILD_DEPENDENCIES_LOCAL=1 on Apple Silicon
make -j
make test

💡 NebulaStream ships with prebuilt dependencies for most architectures. However, for macOS running on Apple Silicon, these are not yet available. On these systems, you have to use the parameter -DNES_BUILD_DEPENDENCIES_LOCAL=1 when running cmake. This can take about an hour on an Apple M1. We will provide prebuilt dependencies in the future.

💡 Refer to the CMake build options for a description of the parameters to modify the NebulaStream build process.