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

2016-4-6     14:17:15

 
安装前准备:
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
 
注意:
编译命令中库的链接顺序要小心,会影响编译是否成功!!!
原文地址:https://www.cnblogs.com/Jimmy104/p/5359196.html