MongoDB C++ 驱动在Ubuntu下的安装

之前写过一片MongoDB C++驱动在win64、VS2010的配置文章,算是勉强使用就版本来凑合。在从OpenCV在2.4.4开始有了自己的JNI,就把全部工作转移到JAVA里来完成,懒得去钻研C++ Driver了。最近因为矩阵运算导致速度太慢,想用C++来提高效率并尝试CUDA,在Ubuntu下又再次尝试编译C++的MongoDB驱动,在此记录。

  

写之前再次吐槽下10gen的Tutorial做的太差劲了。我的主要工作也依靠OpenCV。作为开源免费的视觉库,各种教程十分全面,所需类库清晰明了,还配合一些IDE有上手教程。相比之下Mongo据说融资不少,对编译配置却三言两语,把所有使用者都当成资深程序员了。


在下载编译MongoDB驱动之前,先说下所需的主要类库,这也是官方网站含糊不清,很多朋友可能犯错的地方。ubuntu下安装mongodb很简单,在上一篇已经说了,这里只讲C++驱动。


1. MongoDB是用C++写的,但生成软件并没有用传统的Cmake而是Python的Scons。在Ubuntu下很简单,版本也不那么重要了。

    sudo apt-get install scons


2. MongoDB另一个依赖的主要类库就是Boost。作为功能强大、开源、同行审核的库,版本之间很容易混淆。去官方首页下载,推荐使用1.49。解压出来后里面有bootstrap.sh,在ubuntu下运行得到bjam、b2文件。在我之前Win下配置里用的是bjam,今天配置时网上看到最新版的用b2来安装(也有人用bjam安装成功)。这个安装过程比较长,虽然MongoDB只用其中几个功能,所以可以一一查找编译。更简单粗暴的方法就是全部编译出来(运行 ./b2),在/usr/local/lib下找到那写libboost_..文件算是编译成功了。

可以使用 ./b2 --show-libraries来察看所有库,用 ./b2 install --with-<library name>来指定安装。


使用 ./b2会生成所需的库文件,用 sudo ./b2 install 可以吧文件放在默认的安装目录usr/local/lib下,也可以在配置文件中更改这个目录,使用sudo才有权限把文件放进去。


3. 终于到了MongoDB,去官网下载个单独的“standalone” C++驱动并解压出来,目前最新2.4.8,进入子目录下scons安装。没有安装成功多半是因为找不到Boost类库,应去寻找更多关于它的解决方法。若是编译成功,可以看到文件夹下有libmongoclient.a这个文件。


4. 至此安装步骤基本完成了,拿个编译器把官方的tutorial写个cpp,编译这

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值