mongo的安装
windows:
1 安装scons
(1): 下载python2.7, 使用x86_32位,因为scons只有32位安装包可用, http://www.python.org/download/releases/2.7/,python-2.7.6.msi
(2):下载scons2.3.0,http://www.scons.org/download.php,scons-2.3.0-setup.exe
(3):安装python 和 scons, 将C:\Python27\Scripts写入PATH
(4): 下载安装pywin32 ,http://sourceforge.net/projects/pywin32/files/pywin32/Build%20218/,pywin32-218.win32-py2.7.exe
2 安装boost库
3 下载mongodb的C++ driver http://dl.mongodb.org/dl/cxx-driver/
4 开始安装
CD 到解压的driver目录,运行scons,会提示boost的路径不对,打开SConstruct文件,在最后加上env.Append(CPPPATH=["D:/boost/include/boost-1_54"], LIBPATH=["D:/boost/lib/x64"]),指明目录;
再次运行scons,会提示text.h(89):#error temp error,这是因为scons没带使用 Unicode 字符集的参数,于是就默认使用多字节字符集,打开\mongo-cxx-driver-v2.2\src\mongo\util下的text.h文件,将#error temp error加双斜线注释掉;
再次运行scons,会提示无法解析的符号,在SConstruct文件中加入env.Append(LIBS=['WS2_32','Dbghelp']);
如果你也遇到“\mongo-cxx-driver-v2.4\src\mongo\util”中file.cpp文件中90行: _handle = CreateFileW(toNativeString(filename).c_str(), 报的错误,把CreateFileW改成CreateFile。
5 测试
#include <iostream>
#include "mongo/client/dbclient.h"
using namespace std;
using namespace mongo; void run() {
DBClientConnection c;
c.connect("localhost"); //add port,c.connect("localhost:27017")
} int main(void)
{
try {
run();
cout<<"connected ok"<<endl;
}catch(DBException& e){
cout<<"caught"<<e.what()<<endl;
}
return ; }
工程配置中加入头文件和boost的路径,编译,会有很多连接错误,在链接中加入Dbghelp.lib;WS2_32.lib。编译,还是有错误,仔细一看,发现是mongoclient.lib是在vs2012下编的,而我的测试代码是2010,所以要重新编译mongoclient.lib。
在SConstruct文件中的
env = Environment(BUILD_DIR='#build',
CLIENT_ARCHIVE='${CLIENT_DIST_BASENAME}${DIST_ARCHIVE_SUFFIX}',
CLIENT_DIST_BASENAME='mongo-cxx-driver',
CLIENT_LICENSE='#LICENSE.txt',
CLIENT_SCONSTRUCT='#SConstruct',
MSVS_ARCH=None,
PYTHON=sys.executable,
PYSYSPLATFORM=os.sys.platform)
改成
env = Environment(BUILD_DIR='#build',
MSVS_VERSION = '10.0',
CLIENT_ARCHIVE='${CLIENT_DIST_BASENAME}${DIST_ARCHIVE_SUFFIX}',
CLIENT_DIST_BASENAME='mongo-cxx-driver',
CLIENT_LICENSE='#LICENSE.txt',
CLIENT_SCONSTRUCT='#SConstruct',
MSVS_ARCH=None,
PYTHON=sys.executable,
PYSYSPLATFORM=os.sys.platform)
加了一个编辑器选项:MSVS_VERSION。
再次编译,发现还是有连接错误,搞了半天,把运行库改为MT,然后改为release,就好了。就是说不能用debug来测试了?
再次改SConstruct文件的配置,使之能用于debug:在文件最后加上env.Append(CCFLAGS = ['-D_DEBUG']),就能编出debug版的lib文件了,参考http://www.scons.org/wiki/SconstructMultiple#CA-ea12e28a4186b7e833669c4888e7c7337fa73293_1。如果要编MDd的,就改为env.Append(CCFLAGS = ['-D_DEBUG', '/MDd'])。
最终编完。
mongo的安装的更多相关文章
- mongo db安装和php,python插件安装
安装mongodb 1.下载,解压mongodb(下载解压目录为/opt) 在/opt目录下执行命令 wget fastdl.mongodb.org/linux/mongodb-linux-x86_6 ...
- 一、Mongo的安装
注:学习为主,平台为WIN7 32位系统 一.Mongo的安装 1.1 下载 到官方下载地址(http://www.mongodb.org/downloads)去下载所需要的版本 1.2 安装与运行 ...
- 【Mongo】安装并配置副本集
最近的一个小项目需要用到mongo,所以开始学习下mongo.本打算开三台虚机严格按照生产来配置,然后发现有点带不动,所以决定在一台上通过三个端口来模拟. 1.获取安装包 curl -O http:/ ...
- Java从入门到精通——数据库篇Mongo DB 安装启动及配置详解
一.概述 Mongo DB 下载下来以后我们应该如何去安装启动和配置才能使用Mongo DB,本篇博客就给大家讲述一下Mongo DB的安装启动及配置详解. 二.安装 1.下载Mongo DB ...
- Mongo DB 安装-及分布式集群部署(初稿)
一.安装步骤, 1, 下载最新的Mongo DB数据库:http://www.mongodb.org/downloads?_ga=1.44426535.2020731121.1421844747\ 下 ...
- Failed global initialization:FileNotOpen: Failed to open "C:\MongoDB\data\log\mongo.log" 安装MongoDB时卡死
在安装MongoDB的时候,下载了3.6版本,安装过程中发现到一半就卡死了,后面换了一个较低版本的才安装成功 这里是所有MongoDB版本的下载地址: https://www.mongodb.org/ ...
- Mongo Plugin插件(编辑器PyCharm的Mongo插件安装与使用)
博主接触到MongoDB数据库.用普通的Navicat工具 是不支持的 正准备重新安装一款对应的可视化工具.刚好发现在PyCharm编辑中有连接mongoDB数据的插件 Mongo Plugin 这里 ...
- Ubuntu下Mongo的安装和笔记
在linux下的安装 打开https://www.mongodb.com/download-center#community选择linux然后选择自己的Version复制DOWNLOAD旁边的链接 打 ...
- mongo windows 安装
下载安装包 一路next 打开cmd 或者 power shell 准备本地目录. D: #进入d盘 md data #创建目录 data cd data #进入目录 data md config # ...
随机推荐
- [CareerCup] 17.4 Maximum of Two Numbers 两数中的较大值
17.4 Write a method which finds the maximum of two numbers. You should not use if-else or any other ...
- [CareerCup] 15.1 Renting Apartment 租房
Write a SQL query to get a list of tenants who are renting more than one apartment. -- TABLE Apartme ...
- Excel报表开发
读取Excel数据 /// <summary> /// 封装方法 /// </summary> /// <param name="path">& ...
- WordPress插件入口菜单创建的位置代码
Add_management_page() 在Tools下面创建 Add_options_page() 在Settings下面创建 Add_theme_page() 在Appearance下面创建 A ...
- Rails problem
总是wa~ #include <stdio.h> int main() { ]; ], b[]; while(scanf("%d %s %s", &n, a, ...
- 使用花生壳6.5客户端FTP设置
1.打开FTP客户端—选项—参数选择 2.设置为主动模式(PORT) 3.连接FTP服务器 4.FTP连接成功
- C#编程总结 字符转码
为了适应某种特殊需要,字符需要根据规则进行转码,便于传输.展现以及其他操作等. 看看下面的转码,就知道他的用处了. 1.字符串转码 根据原编码格式与目标编码格式,完成转换.不过可能出现乱码哦.上一章已 ...
- 用session实现简单的购物
package cn.itcast.shopping; import java.io.IOException; import java.io.PrintWriter; import java.util ...
- DOM概述
<!-- DOM:Document Object Model 文档对象模型 用来将标记型文档封装成对象,并将标记型文档中的所有内容(标签,文本,属性等)都封装成对象 封装成对象的目的是为了更为方 ...
- 【iCore3双核心板】【4.3寸液晶驱动板爆照!】
[源代码完全开源,过几天连同硬件一起发布] 花了好久的时间,我们的fpga工程师才完成这液晶模块的驱动代码,其核心价值如下: 1.完全基于fpga驱动,sdram当做缓存: 2.内建双缓冲机制:方便 ...