<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    小明思考

    Just a software engineer
    posts - 124, comments - 36, trackbacks - 0, articles - 0
      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

    leveldb研究 - 編譯/調試

    Posted on 2012-03-08 11:44 小明 閱讀(4832) 評論(1)  編輯  收藏 所屬分類: 分布式計算
    leveldb是 google對bigtable的一個簡化版的開源實現,很有研究價值。

    我的編譯環境:ubuntu 32&g++ 4.6

    1.安裝git并下載代碼

    sudo apt-get install git-core
    git clone https:
    //code.google.com/p/leveldb/

    2. 編譯leveldb

    cd leveldb
    .
    /build_detect_platform
    make

    為了能夠調試,修改Makefile為debug mode(B模式)
    OPT ?= -g2

    編譯后會生成庫文件:libleveldb.a

    3. 編寫測試程序
    ldbtest.cpp
    #include <iostream>
    #include 
    "leveldb/db.h"

    using namespace std;
    using namespace leveldb;

    int main() {
        DB 
    *db ;
        Options op;
        op.create_if_missing 
    = true;
        Status s 
    = DB::Open(op,"/tmp/testdb",&db);

        
    if(s.ok()){
            cout 
    << "create successfully" << endl;
            s 
    = db->Put(WriteOptions(),"abcd","1234");
            
    if(s.ok()){
                cout 
    << "put successfully" << endl;
                
    string value;
                s 
    = db->Get(ReadOptions(),"abcd",&value);
                
    if(s.ok()){
                    cout 
    << "get successfully,value:" << value << endl;
                }
                
    else{
                    cout 
    << "get failed" << endl;
                }
            }
            
    else{
                cout 
    << "put failed" << endl;
            }
        }
        
    else{
            cout 
    << "create failed" << endl;
        }
        delete db;
        
    return 0;
    }
    注意link的時候需要加上-lpthread.

    運行后得到結果:(Eclipse中運行)


    評論

    # re: leveldb研究 - 編譯/調試  回復  更多評論   

    2012-03-15 14:47 by ayanmw
    給你補充下:
    編譯命令為g++ ldbtest.cpp -o ldbtest -L. -I./include -lpthread -lleveldb

    (工作目錄就是leveldb目錄中) include下面是leveldb的頭文件,-L 搜索library 為了libleveldb.a能夠被調用。

    另外,編譯的時候 可以將Makefile中說的snappy 壓縮 也帶上,還有谷歌perfecttools ,這個可選。壓縮還是有必要的吧。
    主站蜘蛛池模板: 免费一级全黄少妇性色生活片 | 亚洲深深色噜噜狠狠网站| 光棍天堂免费手机观看在线观看| 亚洲va中文字幕无码| 一级做a爱过程免费视| 免费人成无码大片在线观看| 美美女高清毛片视频黄的一免费| 亚洲国产成人VA在线观看| 一级毛片**免费看试看20分钟 | 久章草在线精品视频免费观看| 亚洲国产精品无码一线岛国| 免费爱爱的视频太爽了| 中日韩亚洲人成无码网站| 女人被免费视频网站| 蜜芽亚洲av无码一区二区三区| 全部免费a级毛片| 一级毛片在线播放免费| 国产AV无码专区亚洲Av| 日本一卡精品视频免费| 亚洲伊人久久大香线蕉| 午夜一区二区免费视频| 亚洲阿v天堂在线2017免费| 久久久久亚洲精品影视| 最近高清中文字幕无吗免费看| 亚洲性线免费观看视频成熟| 暖暖日本免费在线视频 | 亚洲aⅴ无码专区在线观看春色 | 伊人免费在线观看高清版| 久久亚洲精品无码| 久久电影网午夜鲁丝片免费| 黄色网址免费在线| 亚洲成年轻人电影网站www| 青青草免费在线视频| 未满十八私人高清免费影院| 亚洲国产精品一区| 卡一卡二卡三在线入口免费| 国产免费一区二区三区免费视频| 亚洲精品韩国美女在线| 国产18禁黄网站免费观看| 久久免费观看国产精品88av| 亚洲国产精品无码久久98|