Compilation.md

Summary: Explained what it takes to compile it on linux.

Test Plan: -

Reviewers: dhruba, kailiu

Reviewed By: kailiu

CC: leveldb

Differential Revision: https://reviews.facebook.net/D14151
This commit is contained in:
Igor Canadi 2013-11-18 11:44:17 -08:00
parent f611aba559
commit 0d25449d57
2 changed files with 44 additions and 23 deletions

View File

@ -1,23 +0,0 @@
Currently Rocksdb is developed on Linux (CentOS release 5.2), with
gcc 4.71. To build it on your own platform, you'll need to:
* Make sure your compiler (either `clang` or `gcc`) supports
C++ 11. Please make the version for `gcc` is 4.8 or above; for
`clang` the version is 5.0 or above.
* Install the the libraries that rocksdb depends on:
- [zlib](http://www.zlib.net/), a library for data compression.
- [gflags](https://code.google.com/p/gflags/) that handles command line
flags processing.
## Platforms on which rocksdb can compile:
* Linux
* `OS X`: right now rocksdb can be compiled in Mac if you
* update your xcode to latest version, which allows you to use compiler
that supports C++ 11.
* install gflags, you may run build_tool/mac-install-gflags.sh to install
it. If you install gflags with other means (for example,
`brew install gflags`), please set `LIBRARY_PATH` and `CPATH` accordingly.
* Please note some of the optimizations/features are disabled in OSX. And we
did not run any production workload on it.

44
INSTALL.md Normal file
View File

@ -0,0 +1,44 @@
## Dependencies
RocksDB is developed on Linux (CentOS release 5.2), with gcc 4.8.1.
It depends on gcc with C++11 support.
* RocksDB depends on the following libraries:
- [zlib](http://www.zlib.net/) - a library for data compression.
- [bzip2](http://www.bzip.org/) - a library for data compression.
- [snappy](https://code.google.com/p/snappy/) - a library for fast
data compression.
- [gflags](https://code.google.com/p/gflags/) - a library that handles
command line flags processing.
RocksDB will successfully compile without the compression libraries included,
but some things may fail. We do not support releases without the compression
libraries. You are on your own.
## Supported platforms
* **Linux**
* Upgrade your gcc to version at least 4.7 to get C++11 support.
* Install gflags. If you're on Ubuntu, here's a nice tutorial:
(http://askubuntu.com/questions/312173/installing-gflags-12-04)
* Install snappy. This is usually as easy as:
`sudo apt-get install libsnappy-dev`.
* Install zlib. Try: `sudo apt-get install zlib1g-dev`.
* Install bzip2: `sudo apt-get install libbz2-dev`.
* **OS X**:
* Update your xcode to the latest version to get the compiler with
C++ 11 support.
* Install zlib, bzip2 and snappy libraries for compression.
* Install gflags. We have included a script
`build_tools/mac-install-gflags.sh`, which should automatically install it.
If you installed gflags by other means (for example, `brew install gflags`),
please set `LIBRARY_PATH` and `CPATH` accordingly.
* Please note that some of the optimizations/features are disabled in OSX.
We did not run any production workloads on it.
## Compilation
`make clean; make` will compile librocksdb.a (RocskDB static library) and all
the unit tests. You can run all unit tests with `make check`.
If you followed the above steps and your compile or unit tests fail,
please submit an issue: (https://github.com/facebook/rocksdb/issues)