Debian/Ubuntu
In order to build SWC-DB on Debian/Ubuntu there are several mandatory and optional prerequisites which are available from the os-distribution or some might require additional steps.
SWC-DB Mandatory 3rd-party Prerequisites:
apt-get update;
apt-get install -y \
cmake \
build-essential \
libasio-dev \
libre2-dev \
zlib1g-dev \
libsnappy-dev \
libzstd-dev \
libssl-dev \
libreadline-dev \
git;
REQUIRED VERSIONS:
SWC-DB Optional 3rd-party Prerequisites:
Malloc
libtcmalloc:
apt-get install -y libgoogle-perftools-dev;
Thrift Broker
apt-get install -y \
libboost-math-dev \
libevent-dev \
libthrift-dev;
Java-Thrift client
apt-get install -y \
default-jdk \
maven;
C_GLIB-Thrift client & PAM module
apt-get install -y \
libthrift-c-glib-dev \
libperl-dev \
libffi-dev \
libglib2.0-dev \
libpam-dev;
Hadoop FsBroker native(JVM, C++)
tests require full Java & Apache-Hadoop installation and runtime
-
Native(JVM)
apt-get install -y default-jdk;
Version rather than JAVA_HOME apply cmake with
-DJAVA_INSTALL_PATH=$(find /usr/lib/jvm -name jni.h | sed s"/\/include\/jni.h//"g);
-
Native(C++)
apt-get install -y libprotobuf-dev;
state depends on progress of libhdfscpp
CephFS
apt-get install -y libcephfs-dev;
Documentations
apt-get install -y graphviz doxygen;
Generating Thrift Documentations - COMPILER THRIFT
swcdb_cluster
apt-get install -y python3-pip;
python3 -m pip install setuptools;
python3 -m pip install fabric;