c++ - 如何在 ubuntu 中为 C++ 安装 mongodb 驱动程序?

标签 c++ mongodb

我想使用 c++ 为 mongoDB 开发一个相当简单的应用程序,我遵循他们的教程: http://www.mongodb.org/pages/viewpage.action?pageId=133415

为了安装驱动程序,我遵循了这个: https://groups.google.com/forum/?fromgroups=#!msg/mongodb-user/-mPG7MDJgm8/nZSiN42DJWIJ (Waitman Gobble/5 君回答)

但是当我尝试编译一个简单的应用程序时,我会得到以下错误:

fatal error: client/dbclient.h: No such file or directory

我很确定问题是 MongoDB c++ 驱动程序尚未安装。

如何正确安装?

最佳答案

如果您从here 下载驱动程序源代码,

解压并解压

tar xzf mongodb-linux-x86_64-v2.0-latest.tgz 

然后cd进入目录。

cd mongo-cxx-driver-v2.0/

然后使用scons搭建

scons

并安装

sudo scons install

然后编译tutorial中显示的代码您还需要指定/usr/local/include/mongo 目录作为包含文件搜索路径。

sudo  g++ tutorial.cpp -I/usr/local/include/mongo -lmongoclient 
-lboost_thread -lboost_filesystem -lboost_program_options -o tutorial

然后要运行它,您需要编辑/etc/ld.so.conf 文件

sudo vi /etc/ld.so.conf 

并添加

/usr/local/lib

然后运行

sudo ldconfig

并运行教程

$ ./tutorial 
connected ok

作为编辑 ld.so.config 文件的替代方法,您可以使用 LD_LIBRARY_PATH 环境变量。所以你会做

export LD_LIBRARY_PATH=/usr/local/lib
$ ./tutorial 
connected ok

关于c++ - 如何在 ubuntu 中为 C++ 安装 mongodb 驱动程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12368884/

相关文章:

C++ - 在保持灵活代码的同时处理隐式/显式转换

c++ - 如何读取二进制代码中的exe文件 - C++

不同类型的 MongoDB 索引

node.js - 在heroku上部署后无法读取mongo数据库,返回503错误,但在本地可以工作

java - Spring data DBRef 延迟加载 REST - 500 服务器错误

oracle - 使用 Pentaho Kettle 将字符串转换为 bool 值

c++ - 我无法重写基类的方法,因为我的派生类是模板化的

c++ - 如何判断 bjam 正在使用哪些优化来构建 boost

c++ - 为什么对设备和交换链使用相同的 IDXGIFactory

mongodb - 数据迁移后解析基于位置的查询不起作用