六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 250|回复: 0

LevelDB编译

[复制链接]

升级  90%

9

主题

9

主题

9

主题

童生

Rank: 1

积分
45
 楼主| 发表于 2013-1-25 21:01:36 | 显示全部楼层 |阅读模式
一、下载LevelDB包
    我下载的是:leveldb-1.4.0.tar.gz
二、我在Ubunt上编译
    解压之后进入目录:leveldb-1.4.0
    执行:make,生成了: libleveldb.a
三、拷贝相应头文件到:/usr/local/include目录(需要root权限)
   执行命令:
    sudo cp -r include/leveldb /usr/local/include
 
四、新建测试目录:
   cd ~
   mkdir  test
  拷贝 libleveldb.a、db.h 到test目录
   cd  ~/leveldb-1.4.0
   cp include/leveldb/db.h ~/test
   cp libleveldb.a ~/test
 
五、进入test进行测试:
  cd  ~/test
  新建文件:Main.cpp 文件内容如下:

#include <assert.h> #include <iostream> #include "db.h" using namespace std; int main(int argc,char * argv[]) { leveldb::DB* db; leveldb::Options options; options.create_if_missing = true; std::string dbpath = "tdb"; leveldb::Status status = leveldb::DB::Open(options, dbpath, &db); assert(status.ok()); std::string key1 = "grz"; std::string key2 = "grz-rt@63.com"; cout<<"Open db OK"<<std::endl; std::string value; leveldb::Status s ; s = db->Put(leveldb::WriteOptions(), key1, key2);/*key1和key2作为一对key-value对插入*/ s = db->Get(leveldb::ReadOptions(), key1, &value);/*根据key返回对应的value值*/ cout<<value<<std::endl; delete db;/*删除数据库*/ return 0; }  六、编译运行查看结果:
执行命令:
 g++ -o ttt Main.cpp libleveldb.a -lpthread
运行:./ttt
输出结果如下:
 Open db OK
grz-rt@163.com
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表