This documentation describes a release under development. Documentation for the latest release, 3.6.2, can be found here.
Building librocksdb
¶
Instructions for building rocksdb prior to creating a Mitto Debian
package. Assumes that the Mitto repo is located in ~/mitto
and the
rocksdb repo is located in ~/rocksdb
.
On the build machine, get and build rocksdb.
$ cd ~
$ ROCKSDB_VER=v6.17.3
$ git clone -b ${ROCKSDB_VER} --depth 1 https://github.com/facebook/rocksdb.git
$ cd rocksdb \
# If PORTABLE isn't set, one runs the risk of creating a library with
# instructions using CPU features that may not be present in the
# target systems.
$ PORTABLE=1 make shared_lib
# Not necessary to build, but necessary to actually run Mitto
$ sudo make INSTALL_PATH=/usr install-shared
The above will create the following files/links:
$ cd ~
$ ls -ltr rocksdb/librocksdb*
-rwxr-xr-x 1 khe khe 169760472 Mar 18 08:58 rocksdb/librocksdb.so.6.17.3*
lrwxrwxrwx 1 khe khe 20 Mar 18 08:58 rocksdb/librocksdb.so.6.17 -> librocksdb.so.6.17.3*
lrwxrwxrwx 1 khe khe 20 Mar 18 08:58 rocksdb/librocksdb.so.6 -> librocksdb.so.6.17.3*
lrwxrwxrwx 1 khe khe 20 Mar 18 08:58 rocksdb/librocksdb.so -> librocksdb.so.6.17.3*
The .so
file and related links are included in the Mitto Debian
package when it is built. Their exact location and path must be
correct for packaging and package installation to work.
Mitto¶
Update Mitto¶
mitto/DEBIAN/Makefile
Possibly
mitto/DEBIAN/debian/postinst
Build Mitto Debian Package¶
Once rocksdb is built, Mitto can be built.
$ cd ~/mitto
$ make all # will eventually 'make DEBIAN'
CircleCI Repo¶
If the version of rocksdb has changed, the following must be updated:
Dockerfile
incircleci
repo.
Build and push a new Docker image to CircleCI.