# Prepare the compilation environment on linux - sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test - sudo apt-get update -qq - sudo apt-get install gcc-6 g++-6 libsnappy-dev zlib1g-dev libbz2-dev -qq - export CXX="g++-6" CC="gcc-6" - wget https://launchpad.net/ubuntu/+archive/primary/+files/libgflags2_2.0-1.1ubuntu1_amd64.deb - sudo dpkg -i libgflags2_2.0-1.1ubuntu1_amd64.deb - wget https://launchpad.net/ubuntu/+archive/primary/+files/libgflags-dev_2.0-1.1ubuntu1_amd64.deb - sudo dpkg -i libgflags-dev_2.0-1.1ubuntu1_amd64.deb # Prepare the compilation environment on mac os ``` brew install snappy ``` # install rocksdb: ``` export ROCKSDB_HOME=/Users/chris/dev/rocksdb git clone https://github.com/facebook/rocksdb.git $ROCKSDB_HOME pushd $ROCKSDB_HOME make clean make install-static popd ``` # install gorocksdb ``` export CGO_CFLAGS="-I$ROCKSDB_HOME/include" export CGO_LDFLAGS="-L$ROCKSDB_HOME -lrocksdb -lstdc++ -lm -lz -lbz2 -lsnappy -llz4 -lzstd" go get github.com/tecbot/gorocksdb ``` # compile with rocksdb ``` cd ~/go/src/github.com/chrislusf/seaweedfs/weed go install -tags rocksdb ```