Overview
This guide covers installing RocksDB on various platforms. RocksDB can be compiled from source or installed via package managers on supported platforms.Quick Install
Requirements
RocksDB requires modern C++ compiler support:- GCC >= 11 (for C++20 support)
- Clang >= 10 (for C++20 support)
- MSVC 2017 or later (Windows)
Building from Source
Linux (Ubuntu/Debian)
Install Dependencies
Install required development tools and compression libraries:
Compression libraries are optional but highly recommended. RocksDB can compile without them, but you’ll have fewer compression options.
Build Static Library (Recommended)
Build the release version for production use:This compiles
librocksdb.a in release mode with optimizations enabled.Performance: By default, the binary is optimized for the CPU you’re compiling on (
-march=native). For a more portable binary, use PORTABLE=1 make static_lib.Linux (CentOS/RHEL)
macOS
Windows
FreeBSD
OpenBSD
Build Options
Compilation Targets
Compiles
librocksdb.a static library in release mode with optimizationsCompiles
librocksdb.so shared library in release modeCompiles and runs all unit tests in debug mode (slow, for development only)
Compiles static library, tools, and tests in debug mode (not for production!)
Build Variables
Architecture Optimization: By default, RocksDB uses
-march=native which creates a binary optimized for your CPU but may not work on other machines. Use PORTABLE=1 for wider compatibility.Compression Libraries
RocksDB supports multiple compression algorithms:Snappy
Snappy
Fast compression with reasonable ratioBest for: Low CPU overhead, good default choice
Ubuntu/Debian
CentOS/RHEL
LZ4
LZ4
Extremely fast compressionBest for: Maximum speed, minimal CPU usage
Ubuntu/Debian
CentOS/RHEL
ZSTD (Zstandard)
ZSTD (Zstandard)
Best compression ratio with good speedBest for: Balance of speed and compression ratio (recommended)
Ubuntu/Debian
CentOS/RHEL
Zlib
Zlib
Standard compressionBest for: Wide compatibility
Ubuntu/Debian
CentOS/RHEL
Bzip2
Bzip2
High compression ratio, slowerBest for: Archival, cold storage
Ubuntu/Debian
CentOS/RHEL
Verifying Installation
After installation, verify RocksDB works:test.cc
Platform-Specific Notes
iOS
AIX 6.1
Solaris Sparc
Troubleshooting
Compiler Version Too Old
Compiler Version Too Old
Error:
error: #error This file requires compiler and library support for the ISO C++ 2020 standardSolution: Upgrade to GCC 11+ or Clang 10+Ubuntu
Missing Compression Libraries
Missing Compression Libraries
Error: Build succeeds but compression options don’t workSolution: Install compression libraries before building RocksDB. If you’ve already built RocksDB, clean and rebuild:
Link Errors
Link Errors
Error:
undefined reference to rocksdb::...Solution: Make sure to link all required libraries:Performance Issues
Performance Issues
Issue: RocksDB runs very slowlySolution: You likely built in debug mode. Rebuild in release mode:
Next Steps
Quick Start
Build your first RocksDB application
API Reference
Explore the complete API
Configuration
Learn about RocksDB options and tuning
Examples
See real-world code examples