2019独角兽企业重金招聘Python工程师标准>>>

环境: ubuntu16.4 需要安装 snappy gflage bz2 zstd 以及g++ 其中zstd是facebook开放源代码里的压缩的库

git clone https://github.com/facebook/rocksdb.git

cd rocksdb

make static_lib 成功生成 librocksdb.a静太库(使用动态库,make share_lib)

cd examples/

测试 simple_example.cc 编译命令:

g++ simple_example.cc -o test -I ../include ../librocksdb.a -std=c++11 -lpthread -lrt -lsnappy -lgflags -lz -lbz2 -lzstd 成功后生成test可执行文件

./test

修改simple_example

// Copyright (c) 2011-present, Facebook, Inc.  All rights reserved.
// This source code is licensed under the BSD-style license found in the
// LICENSE file in the root directory of this source tree. An additional grant
// of patent rights can be found in the PATENTS file in the same directory.#include <cstdio>
#include <string>
#include <iostream>#include "rocksdb/db.h"
#include "rocksdb/slice.h"
#include "rocksdb/options.h"using namespace rocksdb;
using namespace std;std::string kDBPath = "/tmp/rocksdb_simple_example";int main() {DB* db;Options options;// Optimize RocksDB. This is the easiest way to get RocksDB to perform welloptions.IncreaseParallelism();options.OptimizeLevelStyleCompaction();// create the DB if it's not already presentoptions.create_if_missing = true;// open DBStatus s = DB::Open(options, kDBPath, &db);assert(s.ok());// Put key-values = db->Put(WriteOptions(), "key1", "value");assert(s.ok());std::string value;// get values = db->Get(ReadOptions(), "key1", &value);assert(s.ok());assert(value == "value");std::cout << value << std::endl;// atomically apply a set of updates{WriteBatch batch;batch.Delete("key1");batch.Put("key2", value);s = db->Write(WriteOptions(), &batch);}s = db->Get(ReadOptions(), "key1", &value);assert(s.IsNotFound());db->Get(ReadOptions(), "key2", &value);assert(value == "value");std::cout << value << std::endl;delete db;return 0;
}

再次编译,输出value value

转载于:https://my.oschina.net/u/198124/blog/908795

rocksdb ubuntu c++源码编译测试相关推荐

  1. Ubuntu下源码编译VirtualBox六 —— 源码编译(5)

    接前一篇文章<Ubuntu下源码编译VirtualBox五 -- 源码编译(4)>,链接如下: Ubuntu下源码编译VirtualBox五 -- 源码编译(4)_蓝天居士的博客-CSDN ...

  2. Ubuntu下源码编译VirtualBox五 —— 源码编译(4)

    接前一篇文章<Ubuntu下源码编译VirtualBox四 -- 源码编译(3)>,链接如下: Ubuntu下源码编译VirtualBox四 -- 源码编译(3)_蓝天居士的博客-CSDN ...

  3. Spring源码编译测试

    Spring源码编译(以5.3.22版本为例) 参考作者:程序员七哥 https://www.bilibili.com/read/cv11704879/ 出处:bilibili 本项目环境版本介绍: ...

  4. <Linux> Ubuntu kernel 源码编译 替换

    本次是在win10自带的hyper-v上安装Ubuntu 16.04 server虚拟机进行试验(desktop版本类似),ubuntu的系统源代码编译后大概需要15G的内存空间,加上压缩包,及编译之 ...

  5. ubuntu php 源码编译安装mysql_ubuntu php5.6源码安装

    标签: 今天又花了一天时间装了php,感觉php的源码安装也挺麻烦的,整个过程各种报错. 下篇文章准备整合所有查找到的报错和解决方法. php和nginx一样,在安装前需要装一堆的依赖.有libmcr ...

  6. Ubuntu下源码编译VirtualBox一 —— 源码下载

    VirtualBox想必大家都不陌生,做Linux开发的尤其是嵌入式Linux开发的人应该基本都知道或玩过VMware和VirtualBox.但通常都是为了在Windows电脑上能够使用Linux环境 ...

  7. LXC源码编译测试(五)

    Anbox是一个免费的开源兼容层,旨在允许为Android开发的移动应用程序和移动游戏在GNU / Linux发行版上运行. 使用LXC执行Android运行时环境,将Android的目录结构重新创建 ...

  8. CentOS 7上源码编译安装和配置LNMP Web+phpMyAdmin服务器环境

    什么是LNMP? LNMP(别名LEMP)是指由Linux, Nginx, MySQL/MariaDB, PHP/Perl/Python组合成的动态Web应用程序和服务器,它是一组Web应用程序的基础 ...

  9. Ubuntu 15.04 安装TensorFlow(源码编译) 及测试梵高作画

    介绍Google的TensorFlow机器学习开源库,在UbuntuKylin上的安装和和源码编译. 原始官方文档参见:http://www.tensorflow.org. 本电脑配置如下: 3.19 ...

最新文章

  1. qteewidgetitem添加子节点_行为树的节点
  2. 微软亚研院CV大佬代季峰跳槽商汤为哪般?
  3. Effective C++ --8 定制new和delete 9杂谈讨论
  4. 面到阿里月薪 27k 数据岗,很难?
  5. c语言指针填空题目,C语言指针题目实战
  6. 入职地府后我成了人生赢家_拿年终奖前跳槽,你才是赢家
  7. 创建IPSEC连接安全
  8. Linux下安装golang
  9. 让失焦影像更加清晰 运用AI深度学习还原影像
  10. 谷歌称语音识别是下一个机会,尤其在发展中国家
  11. appium入门篇(2)--desired capabilities
  12. 将python项目部署到Docker
  13. 聊天室 java代码_java聊天室的实现代码
  14. 【考试总结贴】工程测量学
  15. PC软件标题修改器 支持加壳
  16. 使用 Spirent TestCenter 进行 4-7 层测试
  17. 基于Tensorflow 2.x手动复现BERT
  18. 一年月份大小月口诀_大月小月口诀 什么意思 有多少天
  19. 功能篇------android 实现“摇一摇”功能
  20. 技术总监.部门经理.程序员

热门文章

  1. 2021谷饶中学高考成绩查询,高考成绩
  2. server精简版代理意外终止 sql_来自阿里巴巴内部JAVA面试宝典意外流出
  3. dao层如何调用对象_你的项目应该如何正确分层?
  4. 如何关闭借呗订阅开通通知_支付宝花呗借呗隐藏规则,芝麻分600以上,花呗3.6万,借呗12万!...
  5. flask mysql orm,flask的orm框架(Flask-SQLAlchemy)-创建表
  6. 中添加复选框_Word/excel中在方框中打钩/叉的符号,简单方便快捷
  7. arduino tft 方向_ESP32在Arduino环境下玩转 LVGL,ESP32移植LVGL详细教程
  8. es6去除重复项_Excel的去除重复项你真的明白原理吗?浅尝去除重复项的函数奥秘...
  9. javaee 中遇到的jdk自带的异常(Exception)
  10. java建立线性表的链式结构,数据结构学习----线性表的链式表示(Java实现)