Posted on 2012-08-05 19:47
卡洛shll 阅读(822)
评论(0) 编辑 收藏 引用 所属分类:
数据库
这个问题是在从1.82升级到2.0的时候出的连接问题,自己用了很长时间才解决掉,总算解决了,分享下原因吧。主要是因为从官网上下载的C++ Mongo驱动有问题。必须自己编译,可以通过命令查看:
- >>nm libmongoclient.a | grep get_system_category
- U _ZN5boost6system19get_system_categoryEv
- U _ZN5boost6system19get_system_categoryEv
- U _ZN5boost6system19get_system_categoryEv
- U _ZN5boost6system19get_system_categoryEv
- U _ZN5boost6system19get_system_categoryE
>>nm libmongoclient.a | grep get_system_category
U _ZN5boost6system19get_system_categoryEv
U _ZN5boost6system19get_system_categoryEv
U _ZN5boost6system19get_system_categoryEv
U _ZN5boost6system19get_system_categoryEv
U _ZN5boost6system19get_system_categoryE
会发现这个在boost库中根本就没有这个函数。可能官网提供的lib编译参数不一样。 只能自己编译了。 另外如果boost还有其它问题,你需要。
1.删除boost /usr/include/ 和/usr/lib/下的 所有关于boost的文件 还有系统自带的 一般在 /usr/lib64 下 可以通过 locate boost | grep usr 来查找
2.重新安装boost:
- ./bootstrap.sh
- ./bjam install
- 默认会安装到/usr/local 下
./bootstrap.sh
./bjam install
默认会安装到/usr/local 下