linux mongodb 编译,linux下mongodb程序和c++客户端的编译

安装前准备:

1/ 安装boost库

2/ 安装scons程序

方法一:

$ git clone git://github.com/mongodb/mongo.git

$ cd mongo

$ cat docs/building.md

$ scons .

经过一段时间的编译,即可生成mongodb的服务器端和客户端,还有c++客户端库。

方法二:使用scons编译(要先安装scons程序)

从官网上面下载mongo源码(http://www.mongodb.org/downloads),我下载的版本是

mongodb-src-r2.0.7.tar.gz

解压缩之后生成mongodb-src-r2.0.7目录,cd到这个目录

然后执行命令:

scons --prefix=/urs/local/mongo

到时候会在/urs/local/mongo生成三个目录bin,include,lib

其中:

bin下包含mongo的服务端和客户端,还有其他的一些工具

include是mongo的头文件

lib是客户端的库,这里生成的cpp的客户端库

完成!

在源码的目录下,client/example下有一些简单的测试样例,可以编译一下:

cd到client/example下

编译first.cpp

g++ first.cpp -o first -I/usr/local/mongo/include/mongo -L/usr/local/mongo/lib -llibmongoclient.a -lboost_thread -lboost_filesystem -lboost_program_options -lboost_system

编译clientTest.cpp

g++ clientTest.cpp -o clientTest -I/usr/local/mongo/include/mongo -L/usr/local/mongo/lib -llibmongoclient.a -lboost_thread -lboost_filesystem -lboost_program_options -lboost_system

注意:

编译命令中库的链接顺序要小心,会影响编译是否成功!!!