1、下载源码并编译

git clone https://github.com/google/leveldb.git

cd leveldb

//编译源码的时候需要安装cmake,并且版本需要大于3.9,我们选择下载安装包的方式安装
//文件下载解压
wget https://cmake.org/files/v3.12/cmake-3.12.2-Linux-x86_64.tar.gz //解压

tar zxvf cmake-3.12.2-Linux-x86_64.tar.gz

创建软链接

注: 文件路径是可以指定的, 一般选择在/opt 或 /usr 路径下, 这里选择/opt
mv cmake-3.12.2-Linux-x86_64 /opt/cmake-3.12.2
ln -sf /opt/cmake-3.12.2/bin/*  /usr/bin/

//到此cmake环境配置完成,接下来可以编译代码

cd leveldb

mkdir -p build && cd build
cmake -DCMAKE_BUILD_TYPE=Release .. && cmake --build .

2、测试代码

demo.cc
#include <cassert>
#include <iostream>
#include <string>
#include <leveldb/db.h>
int main() {
leveldb::DB* db;
leveldb::Options options;
options.create_if_missing = true;
leveldb::Status status = leveldb::DB::Open(options, "/tmp/testdb", &db);
assert(status.ok());
std::string key = "apple";
std::string value = "A";
std::string get;
leveldb::Status s = db->Put(leveldb::WriteOptions(), key, value); if (s.ok()) s = db->Get(leveldb::ReadOptions(), key, &get);
if (s.ok()) std::cout << "读取到的与(key=" << key << ")对应的(value=" << get << ")" << std::endl;
else std::cout << "读取失败!" << std::endl;
delete db;
return 0;
}
g++ -o demo demo.cc -pthread -lleveldb -std=c++11
注意:一定要加-lpthread,因为leveldb有用到线程相关调用。
./demo
读取到的与(key=apple)对应的(value=A)

最新文章

  1. #研发中间件介绍#定时任务调度与管理JobCenter
  2. 分页进阶--ajax+jquery+struts2
  3. 华为RH2285安装过程及经验总结
  4. java攻城狮之路(Android篇)--Activity生命
  5. Python内置函数解析
  6. list转datatable c#
  7. joinfetch之意义
  8. 在vs2005中使用SVN进行版本管理
  9. 从两个集合里排除重复的写法(适用:DB表和字段都很多,表间有关联的情况)
  10. new Date()在IE,谷歌,火狐上的一些注意项
  11. adb :unknown host service
  12. Android应用开发-小巫CSDN博客client之嵌入有米广告
  13. mxnet:结合R与GPU加速深度学习
  14. OkHttp拆解之调用流程图
  15. TensorFlow实现Softmax Regression识别手写数字中&quot;TimeoutError: [WinError 10060] 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败”问题
  16. Gradle--初识
  17. nmap比较详细的使用方法
  18. CentOS 7 zabbix实现微信报警
  19. page用法
  20. 精心收集的 48 个 JavaScript 代码片段,仅需 30 秒就可理解!

热门文章

  1. CMake入门-04-自定义编译选项
  2. js之拖拽事件
  3. 3d转化
  4. vue兄弟组件的传值eventbus
  5. Point to class member
  6. 装机篇:将ubuntu 14.04安装在移动硬盘中
  7. centos根目录扩容,home目录减小容量
  8. 阿里P7分享如何面对枯燥的源码
  9. Mysql高可用集群-解决MMM单点故障
  10. Python使用selenium模拟点击(一)