There are a few pre-requisites that we don't install and that we leave to the user to install first:
- rust toolchain (cargo, rustc etc). We suggest using rustup
- There is a
rustup
Makefile target to install it for you. Usemake rustup
in the project root.
- There is a
- clang
C
andC++
compiler on macos. The most normal way of getting this would be:- install XCode from the Mac App Store
- install Xcode command line tools
- accept the license from the command line.
In order to build Anna, there are additional build-tool dependencies.
Most can be installed with standard package managers like brew
on macOS and apt-get
on Linux.
Some require download and being built locally with the build-tools previously installed.
You can install them using make dependencies
from the root of the project.
Once all pre-requisites are correctly working on the development machine, you
can run the standard build using the top-level Makefile
with just make
This will build, lint, run tests, generate docs etc.
KVS server executables will be in build/target
, the CPP-based interactive CLI for Anna in
build/client
and the rust cli anna
in cli/target
.