Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/143.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Visual C+;构建mongodb源代码时出错+; 我遵循注释创建VisualC++项目。我还执行了: scons generated-sources_C++_Mongodb_Visual C++ - Fatal编程技术网

使用Visual C+;构建mongodb源代码时出错+; 我遵循注释创建VisualC++项目。我还执行了: scons generated-sources

使用Visual C+;构建mongodb源代码时出错+; 我遵循注释创建VisualC++项目。我还执行了: scons generated-sources,c++,mongodb,visual-c++,C++,Mongodb,Visual C++,用于创建丢失的文件。在mongo的主分支中,当我构建项目时,我得到以下错误: 严重性代码说明项目文件行抑制状态 错误C2370'kuint16max':重新定义;不同的存储级别 (编译源文件) src\third\u party\s2\base\stroint.cc)mongod D D:\Open Source\mongo\src\third\u party\gperftools-2.5\src\base\basictypes.h 74 似乎有两个kuint16max的全局定义,一个在inte

用于创建丢失的文件。在mongo的主分支中,当我构建项目时,我得到以下错误:

严重性代码说明项目文件行抑制状态 错误C2370'kuint16max':重新定义;不同的存储级别 (编译源文件) src\third\u party\s2\base\stroint.cc)mongod D D:\Open Source\mongo\src\third\u party\gperftools-2.5\src\base\basictypes.h 74

似乎有两个
kuint16max
的全局定义,一个在
integral\u types.h
中,另一个在
basictypes.h
中。以下是
basictypes.h
文件中的主要部分(与错误相关):

const uint16 kuint16max = (   (uint16) 0xFFFF);
const uint32 kuint32max = (   (uint32) 0xFFFFFFFF);
const uint64 kuint64max = ( (((uint64) kuint32max) << 32) | kuint32max );

const  int8  kint8max   = (   (  int8) 0x7F);
const  int16 kint16max  = (   ( int16) 0x7FFF);
const  int32 kint32max  = (   ( int32) 0x7FFFFFFF);
const  int64 kint64max =  ( ((( int64) kint32max) << 32) | kuint32max );

const  int8  kint8min   = (   (  int8) 0x80);
const  int16 kint16min  = (   ( int16) 0x8000);
const  int32 kint32min  = (   ( int32) 0x80000000);
const  int64 kint64min =  ( (((uint64) kint32min) << 32) | 0 );

当我将git分支更改为稳定分支时,错误仍然存在。所以我认为问题出在我的构建中。

不要使用vcproj的东西从源代码构建MongoDB。它旨在供一些Windows开发人员在内部尽最大努力使用。相反,请遵循中的生成说明并在命令行上使用SCON进行生成。主分支的良好Windows build命令行可能如下所示:

python./buildscripts/scons.py--release-j12--dynamic windows--win version min=ws08r2 core

但一定要调整-j值,使其适合您的本地系统。还要注意building.md文件有点过时(修复程序目前正在代码审查中),您需要VS2015更新3以及

static const uint8  kuint8max  = (( uint8) 0xFF);
static const uint16 kuint16max = ((uint16) 0xFFFF);
static const uint32 kuint32max = ((uint32) 0xFFFFFFFF);
static const uint64 kuint64max = ((uint64) GG_LONGLONG(0xFFFFFFFFFFFFFFFF));
static const  int8  kint8min   = ((  int8) 0x80);
static const  int8  kint8max   = ((  int8) 0x7F);
static const  int16 kint16min  = (( int16) 0x8000);
static const  int16 kint16max  = (( int16) 0x7FFF);
static const  int32 kint32min  = (( int32) 0x80000000);
static const  int32 kint32max  = (( int32) 0x7FFFFFFF);
static const  int64 kint64min  = (( int64) GG_LONGLONG(0x8000000000000000));
static const  int64 kint64max  = (( int64) GG_LONGLONG(0x7FFFFFFFFFFFFFFF));