九色国产,午夜在线视频,新黄色网址,九九色综合,天天做夜夜做久久做狠狠,天天躁夜夜躁狠狠躁2021a,久久不卡一区二区三区

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
VS2010 C++下編譯調試MongoDB源碼
考慮到mongodb使用了boost庫源碼,參考mongodb官方文檔后,下載編譯boost版本是1.42(時間為2010-2-2)或更新版本:
      
     boost版本1.42:
     http://sourceforge.net/projects/boost/files/boost/1.42.0/boost_1_42_0.zip/download     
 
     下載boost源碼之后,我把boost解壓在D盤。

     1.在D:\boost_1_42_0\下找到該批處理文件bootstrap.bat,以vs2010命令行方式運行它,并最終生成bjam.exe可執(zhí)行文件(詳細結果及錯誤信息見生成的bjam.log日志)。   
 
     2.將生成的bjam.exe文件拷貝到“D:\boost_1_42_0”目錄下,運行下面命令行
   
bjam stage variant=debug  --stagedir="d:\boost_1_42_0" --with-filesystem --with-thread --with-date_time --with-program_options --layout=versioned threading=multi toolset=msvc-10.0

     如下圖:
   

    
    注:i.如果要生成release鏈接庫文件,需將上面的variant設置成release,形如:
          bjam stage variant=release .....     
       ii.如果要全部生成使用下面編譯選項
          bjam ......  --build-type=complete
 
     編譯過程可能會用一些時間,最終會在"D:\boost_1_42_0" 生成一個lib目錄,里面包括剛生成的庫文件。
 
   3.下載已用vs2010編譯的SpiderMonkey庫文件及源碼包,并將其解壓到D盤下,下載鏈接:
     https://github.com/dwight/vc2010_js

     將該文件夾名稱改為“js”(因為mongodb項目會默認指定該路徑尋找可用的lib及c源文件),如下圖:
    



    說明:SpiderMonkey是由C語言操作的JavaScript引擎,它支持JS1.4和ECMAScript-262規(guī)范。該引擎分析、編譯和執(zhí)行腳本,根據JS數據類型和對象的需要進行內存分配及釋放操作。目前它是Mozilla項目的一部分??赏ㄟ^下面鏈接了解更多信息:
    https://developer.mozilla.org/en/SpiderMonkey
    源碼下載鏈接:
    https://developer.mozilla.org/En/SpiderMonkey/Getting_SpiderMonkey_source_code
    另外如何使用spidermonkey參見:
    http://www.ibm.com/developerworks/cn/linux/shell/js/js_engine/
   
  4.接下來下載并解壓mongod源碼包(本人下載的是其最新版本:r1.8.0-rc1),這里我將其也解壓在了D盤:
      
    mongodb-src-r1.8.0-rc1:
    https://github.com/mongodb/mongo/zipball/r1.8.0-rc1
 
    之后利用vs2010打開 D:\mongodb-mongo-4d2aeb6\db目錄下的解決方案文件“db_10.sln”, 加載之后的視圖如下:
   

 
    
    在其中的mongod項目上,點擊鼠標右鍵,打開"屬性"對話框, 在“配置屬性”-“c++目錄”-"包含目錄"中點“編輯”:
   

    添加對上面的boost源碼文件路徑的包含:
    
 
    
     設置庫文件目錄選項中添加對剛編譯的boost庫的路徑"D:\boost_1_42_0\lib"聲明,如下圖:    

   


   


 
     在C/C++常規(guī)--“附加包含目錄”,中添加"D:\boost_1_42_0"聲明,如下圖:

   


 

     5.因為我的機器是32位系統(tǒng),而下載的mongodb項目設置為64位,所以要修改一下編譯方式,如下圖
    



     一切就緒后,開始編譯,時間比較長,耐心等待...    

     注:如出現(xiàn)“pch.h文件無法打開”的錯誤信息時,只要在VS2010中的開該文件即可。

    6.如果要調試的話,打開“項目屬性”--“配置屬性”--“調試”--“命令參數”,輸入如下參數  :

     "--dbpath d:\mongodb\db" "--port 27017"

   


     然后找出db.cpp文件,將斷點放在如下函數的第一行代碼處:

 

  int main(int argc, char* argv[])


     如下圖:




     需要說明的是,我一開始使用的是VS2008,但mongodb源碼在最新版本中好像就不再提供vs2008的項目文件了,另外我使用vs2008也一直沒有成功編譯過mongodb,不是缺文件就是鏈接庫編譯時有問題(google一下,發(fā)現(xiàn)國外同行也被類似問題困擾)。所以大家也就不要再VS2008 編譯上浪費時間了。

     

     好了,到這里主要的內容介紹完了,大家可以通過調試來分析觀察MONGODB代碼的執(zhí)行流程了。

 

    參考鏈接:
    http://www.cnblogs.com/wondering/archive/2009/05/21/boost_setup.html
    http://www.cnblogs.com/xdotnet/archive/2008/03/22/boost_install_config.html
    http://www.mongodb.org/display/DOCS/Building+with+Visual+Studio+2010      

 

    Tags: mongodb,c++,source code
本站僅提供存儲服務,所有內容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權內容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
vs2010 x64 下 boost Python 編譯
vs2010設置boost開發(fā)環(huán)境
bjam參數
boost 編譯選項
CGAL 安裝
boost 編譯
更多類似文章 >>
生活服務
熱點新聞
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服