1.下载下载mongo-c-drive-master

到MongoDB官网https://github.com/mongodb/mongo-c-driver,下载mongo-c-drive-master,通过阅读README,知道还要下载python和scons来编译MonDB c drive。

 

2下载安装python  (好像python不要下载最新的3.3版本,scons暂时不支持)
http://www.python.org/getit/,或可以在别的地方下载python-2.7.3.msi


3.下载安装scons (需要python,所以要先安装python)
http://sourceforge.net/projects/scons/files/scons/2.2.0/
并配置python脚本路径,将C:\Python27\Scripts添加到PATH中。

 

4.打开cmd,进入到mongo-c-drive-master文件夹里,输入scons --m32 --standard-env(经测试,--standard-env可以不要),我们会发现错误提示。

按照提示把src/mongo.c文件 snprintf改成_snprintf,接着编译,便能顺利通过

 

我们发现会生成mongoc.lib,mongoc.dll,bson.lib,bson.dll。

如果输入scons --m32 test便会自己测试,会在bson_alloc这里发生错误,原因不知,但不影响我们的使用。

如果想测试test_gridfs是否可用

打开mongo-c-drive-master文件夹里Sconstruct,大概在280行,

tests = Split("write_concern commands sizes resize endian_swap bson_alloc bson bson_subobject simple update errors "
"count_delete auth gridfs validate examples helpers oid functions cursors")

 

我们把gridfs放进去,修改如下

tests = Split("write_concern commands sizes resize endian_swap gridfs bson_alloc bson bson_subobject simple update errors "
"count_delete auth  validate examples helpers oid functions cursors")

输入scons --m32 test,就会生成test_gridfs.exe了。

 

 

 

5.在用到c语言api时,包含头文件,bson.lib和mongoc.lib即可。在VS2010环境下,项目-属性-配置属性-连接器-输入-附加依赖项,里面加入即可。记得要把mongoc.lib,mongoc.dll,bson.lib,bson.dll文件拷到工作目录下。

(mongoc.lib里看源代码是包含着bson.lib的内容,所以只用一个mongoc.lib也可以,但本文同时包含了这2个库文件)

 

7.以上是刚刚自己测试的,如有错误,谢谢指正。

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐