我想使用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 jun回答)
但是当我尝试编译一个简单的应用程序时,我会得到以下错误:
致命错误:client / dbclient.h:没有这样的文件或目录
我很确定问题是MongoDB c ++驱动程序尚未安装。
如何正确安装?
答案 0 :(得分:5)
在Ubuntu中,开发包与通用包是分开的。
为了使用mongodb头文件和客户端库,您需要sudo apt-get install mongodb-dev libmongo-client-dev
- 这会添加允许您#include
相关头文件的标头。
这假设您已经安装了包含客户端库的libmongo-client
和mongodb
软件包,但是在安装-dev
软件包时应该安装它们。
答案 1 :(得分:5)
如果您从here下载驱动程序源代码,
解压缩并解压缩
tar xzf mongodb-linux-x86_64-v2.0-latest.tgz
然后进入目录。
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