1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/ZNBase-zn-kvs

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
INSTALL.md 6.3 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 30.11.2024 16:52 fddbd62

Компиляция

Важно: если вы планируете использовать RocksDB в рабочей среде, не компилируйте с помощью команд make или make all. Это скомпилирует RocksDB в режиме отладки, который намного медленнее, чем режим выпуска.

Библиотека RocksDB должна компилироваться без установленных зависимостей, хотя мы рекомендуем установить некоторые библиотеки сжатия (см. ниже). Мы зависим от более новых версий gcc/clang с поддержкой C++11.

Есть несколько вариантов компиляции RocksDB:

  • [рекомендуется] make static_lib скомпилирует librocksdb.a, статическую библиотеку RocksDB. Компилирует статическую библиотеку в режиме выпуска.

  • make shared_lib скомпилирует librocksdb.so, разделяемую библиотеку RocksDB. Компилирует разделяемую библиотеку в режиме выпуска.

  • make check скомпилирует и запустит все модульные тесты. make check компилирует RocksDB в режиме отладки.

  • make all скомпилирует нашу статическую библиотеку и все наши инструменты и модульные тесты. Наши инструменты зависят от gflags. Вам нужно будет установить gflags для запуска make all. Это компилирует RocksDB в режиме отладки. Не используйте двоичные файлы, скомпилированные с помощью make all, в рабочей среде.

По умолчанию создаваемый нами двоичный файл оптимизирован для платформы, на которой вы компилируете (-march=native или эквивалент). SSE4.2 будет автоматически включён, если ваш процессор поддерживает его. Чтобы выводить предупреждение, если ваш ЦП не поддерживает SSE4.2, соберите с USE_SSE=1 make static_lib, или, если используете CMake, cmake -DFORCE_SSE42=ON. Если вы хотите создать переносимый двоичный файл, добавьте PORTABLE=1 перед командами make, например так: PORTABLE=1 make static_lib.

Зависимости

  • Вы можете связать RocksDB со следующими библиотеками сжатия:
    • zlib — библиотека для сжатия данных.
    • bzip2 — библиотека для сжатия данных.
    • lz4 — библиотека для чрезвычайно быстрого сжатия данных. — snappy — библиотека для быстрого сжатия данных. — zstandard — быстрый алгоритм сжатия в реальном времени.

Все наши инструменты зависят от:

gflags — библиотеки, которая обрабатывает обработку флагов командной строки. Вы можете скомпилировать библиотеку rocksdb, даже если у вас не установлен gflags.

Если вы хотите собрать статический целевой объект RocksJava, то для сборки Snappy требуется cmake.

Поддерживаемые платформы

  • Linux — Ubuntu

    • Обновите свой gcc до версии не менее 4.8, чтобы получить поддержку C++11.
    • Установите gflags. Сначала попробуйте: sudo apt-get install libgflags-dev. Если это не сработает и вы используете Ubuntu, вот хороший учебник: (http://askubuntu.com/questions/312173/installing-gflags-12-04).
    • Установите snappy. Обычно это так же просто, как: sudo apt-get install libsnappy-dev.
    • Установите zlib. Попробуйте: sudo apt-get install zlib1g-dev.
    • Установите bzip2: sudo apt-get install libbz2-dev.
    • Установите lz4: sudo apt-get install liblz4-dev.
    • Установите zstandard: sudo apt-get install libzstd-dev.
  • Linux — CentOS / RHEL

    • Обновите свой gcc до версии не менее 4.8, чтобы получить поддержку C++11: yum install gcc48-c++.

    • Установите gflags:

          git clone https://github.com/gflags/gflags.git
          cd gflags
          git checkout v2.0
          ./configure && make && sudo make install

    Примечание: после установки добавьте путь включения для gflags в вашу переменную среды CPATH и путь к библиотеке в LIBRARY_PATH. Если установлено с настройками по умолчанию, путь включения будет /usr/local/include, а путь к библиотеке будет /usr/local/lib.

    • Установите snappy:

          sudo yum install snappy snappy-devel
    • Установите zlib:

          sudo yum install zlib zlib-devel
    • Установите bzip2:

          sudo yum install bzip2 bzip2-devel
    • Установите lz4:

          sudo yum install lz4-devel
    • Установите ASAN (необязательно для отладки):

          sudo yum install libasan
    • Установите zstandard:

         wget https://github.com/facebook/zstd/archive/v1.1.3.tar.gz
         mv v1.1.3.tar.gz zstd-1.1.3.tar.gz

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/ZNBase-zn-kvs.git
git@api.gitlife.ru:oschina-mirror/ZNBase-zn-kvs.git
oschina-mirror
ZNBase-zn-kvs
ZNBase-zn-kvs
develop