要有boost庫。
1.download cxx-driver for 2.0, unzip to /usr/src folder
wget http://downloads.mongodb.org/cxx-driver/mongodb-linux-x86_64-v2.0-latest.tgz
2.sudo apt-get install libpcre3-dev
3.sudo apt-get install scons
chenshu@chenshu-ubuntu:/usr/local/src/mongo-cxx-driver-v2.0$
rm -f .sconsign.dblitescons --prefix=/usr install
如有必要配置SConstruct檔案,比如boost庫位於/usr/lib下面的話,要將配置從/usr/local改為/usr
4.如果沒有安裝到/usr/lib目錄下,則用下面命令複製一下
sudo cp libmongoclient.* /usr/lib/
5.如果開發的時候想調試進入原始碼看看,需要在SConstruct檔案中找到if linux,然後添加一行 -g參數。
if linux:
env.Append( LINKFLAGS=" -Wl,--as-needed -Wl,-zdefs " )
env.Append( CPPFLAGS=" -g " )
mongodb2.1之後出現了無法編譯.so檔案,只能編譯.a檔案的bug,這裡是issue:
https://jira.mongodb.org/browse/SERVER-6514?page=com.atlassian.streams.streams-jira-plugin:activity-stream-issue-tab
在長達4個月的時間裡面,此issue無人過問。看上去Mongodb的核心團隊工作也不象外界想象的那麼傑出。
繞過的方法有兩個:
1.src/SConscript.client檔案的101行取消注釋,重新編譯即可。
2.不要使用.so檔案,直接引入標頭檔到自己的工程中。
#include "src/mongo/client/dbclient.h"