今日VS2012 C++编译出现一堆错误:

 >  正在生成代码...
>Code.obj : error LNK2005: "public: __thiscall std::_Container_base12::_Container_base12(void)" (??0_Container_base12@std@@QAE@XZ) 已经在 msvcprtd.lib(MSVCP110D.dll) 中定义
>Code.obj : error LNK2005: "public: __thiscall std::_Container_base12::~_Container_base12(void)" (??1_Container_base12@std@@QAE@XZ) 已经在 msvcprtd.lib(MSVCP110D.dll) 中定义
>Code.obj : error LNK2005: "public: void __thiscall std::_Container_base12::_Orphan_all(void)" (?_Orphan_all@_Container_base12@std@@QAEXXZ) 已经在 msvcprtd.lib(MSVCP110D.dll) 中定义
>IOCP_Socket.lib(CLog.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MDd_DynamicDebug”不匹配值“MTd_StaticDebug”(Code.obj 中)
>IOCP_Socket.lib(TcpServer.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MDd_DynamicDebug”不匹配值“MTd_StaticDebug”(Code.obj 中)
>IOCP_Socket.lib(stdafx.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MDd_DynamicDebug”不匹配值“MTd_StaticDebug”(Code.obj 中)
>IOCP_Socket.lib(TcpSrvException.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MDd_DynamicDebug”不匹配值“MTd_StaticDebug”(Code.obj 中)
>IOCP_Socket.lib(TcpReceiveContext.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MDd_DynamicDebug”不匹配值“MTd_StaticDebug”(Code.obj 中)
>IOCP_Socket.lib(TcpSendContext.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MDd_DynamicDebug”不匹配值“MTd_StaticDebug”(Code.obj 中)
>IOCP_Socket.lib(AcceptContext.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MDd_DynamicDebug”不匹配值“MTd_StaticDebug”(Code.obj 中)
>IOCP_Socket.lib(OperateContext.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MDd_DynamicDebug”不匹配值“MTd_StaticDebug”(Code.obj 中)
>IOCP_Socket.lib(MemoryBlock.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MDd_DynamicDebug”不匹配值“MTd_StaticDebug”(Code.obj 中)
>IOCP_Socket.lib(ContextStack.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MDd_DynamicDebug”不匹配值“MTd_StaticDebug”(Code.obj 中)
>msvcprtd.lib(MSVCP110D.dll) : error LNK2005: "void __cdecl std::_Debug_message(wchar_t const *,wchar_t const *,unsigned int)" (?_Debug_message@std@@YAXPB_W0I@Z) 已经在 libcpmtd.lib(stdthrow.obj) 中定义
>msvcprtd.lib(MSVCP110D.dll) : error LNK2005: "public: __thiscall std::_Container_base12::_Container_base12(void)" (??0_Container_base12@std@@QAE@XZ) 已经在 Code.obj 中定义
>msvcprtd.lib(MSVCP110D.dll) : error LNK2005: "public: __thiscall std::_Container_base12::~_Container_base12(void)" (??1_Container_base12@std@@QAE@XZ) 已经在 Code.obj 中定义
>msvcprtd.lib(MSVCP110D.dll) : error LNK2005: "public: void __thiscall std::_Container_base12::_Orphan_all(void)" (?_Orphan_all@_Container_base12@std@@QAEXXZ) 已经在 Code.obj 中定义
>msvcprtd.lib(MSVCP110D.dll) : error LNK2005: "void __cdecl std::_Xbad_alloc(void)" (?_Xbad_alloc@std@@YAXXZ) 已经在 libcpmtd.lib(xthrow.obj) 中定义
>msvcprtd.lib(MSVCP110D.dll) : error LNK2005: "void __cdecl std::_Xlength_error(char const *)" (?_Xlength_error@std@@YAXPBD@Z) 已经在 libcpmtd.lib(xthrow.obj) 中定义
>msvcprtd.lib(MSVCP110D.dll) : error LNK2005: "void __cdecl std::_Xout_of_range(char const *)" (?_Xout_of_range@std@@YAXPBD@Z) 已经在 libcpmtd.lib(xthrow.obj) 中定义
>msvcprtd.lib(MSVCP110D.dll) : error LNK2005: "char const * __cdecl std::_Syserror_map(int)" (?_Syserror_map@std@@YAPBDH@Z) 已经在 libcpmtd.lib(syserror.obj) 中定义
>msvcprtd.lib(MSVCP110D.dll) : error LNK2005: "char const * __cdecl std::_Winerror_map(int)" (?_Winerror_map@std@@YAPBDH@Z) 已经在 libcpmtd.lib(syserror.obj) 中定义
>msvcprtd.lib(MSVCP110D.dll) : error LNK2005: "public: __thiscall std::_Lockit::_Lockit(int)" (??0_Lockit@std@@QAE@H@Z) 已经在 libcpmtd.lib(xlock.obj) 中定义
>msvcprtd.lib(MSVCP110D.dll) : error LNK2005: "public: __thiscall std::_Lockit::~_Lockit(void)" (??1_Lockit@std@@QAE@XZ) 已经在 libcpmtd.lib(xlock.obj) 中定义
>MSVCRTD.lib(MSVCR110D.dll) : error LNK2005: _memmove 已经在 LIBCMTD.lib(memmove.obj) 中定义
>MSVCRTD.lib(MSVCR110D.dll) : error LNK2005: _fclose 已经在 LIBCMTD.lib(fclose.obj) 中定义
>MSVCRTD.lib(MSVCR110D.dll) : error LNK2005: _fflush 已经在 LIBCMTD.lib(fflush.obj) 中定义
>MSVCRTD.lib(MSVCR110D.dll) : error LNK2005: _printf 已经在 LIBCMTD.lib(printf.obj) 中定义
>MSVCRTD.lib(MSVCR110D.dll) : error LNK2005: _vprintf 已经在 LIBCMTD.lib(vprintf.obj) 中定义
>MSVCRTD.lib(MSVCR110D.dll) : error LNK2005: __vsnprintf_s 已经在 LIBCMTD.lib(vsnprnc.obj) 中定义
>MSVCRTD.lib(MSVCR110D.dll) : error LNK2005: _vsprintf_s 已经在 LIBCMTD.lib(vsnprnc.obj) 中定义
>MSVCRTD.lib(MSVCR110D.dll) : error LNK2005: __invalid_parameter 已经在 LIBCMTD.lib(invarg.obj) 中定义
>MSVCRTD.lib(MSVCR110D.dll) : error LNK2005: _memcpy_s 已经在 LIBCMTD.lib(memcpy_s.obj) 中定义
>MSVCRTD.lib(MSVCR110D.dll) : error LNK2005: _strncpy_s 已经在 LIBCMTD.lib(strncpy_s.obj) 中定义
>MSVCRTD.lib(MSVCR110D.dll) : error LNK2005: "public: virtual __thiscall std::exception::~exception(void)" (??1exception@std@@UAE@XZ) 已经在 LIBCMTD.lib(stdexcpt.obj) 中定义
>MSVCRTD.lib(MSVCR110D.dll) : error LNK2005: "public: virtual char const * __thiscall std::exception::what(void)const " (?what@exception@std@@UBEPBDXZ) 已经在 LIBCMTD.lib(stdexcpt.obj) 中定义
>MSVCRTD.lib(MSVCR110D.dll) : error LNK2005: __CrtDbgReportW 已经在 LIBCMTD.lib(dbgrptw.obj) 中定义
>MSVCRTD.lib(ti_inst.obj) : error LNK2005: "private: __thiscall type_info::type_info(class type_info const &)" (??0type_info@@AAE@ABV0@@Z) 已经在 LIBCMTD.lib(typinfo.obj) 中定义
>MSVCRTD.lib(ti_inst.obj) : error LNK2005: "private: class type_info & __thiscall type_info::operator=(class type_info const &)" (??4type_info@@AAEAAV0@ABV0@@Z) 已经在 LIBCMTD.lib(typinfo.obj) 中定义
>LINK : warning LNK4098: 默认库“MSVCRTD”与其他库的使用冲突;请使用 /NODEFAULTLIB:library
>E:\Projects\C++\IOCP_Socket\Debug\Test.exe : fatal error LNK1169: 找到一个或多个多重定义的符号
========== 生成: 成功 个,失败 个,最新 个,跳过 个 ==========

后来查了下,是运行库设置的问题; 几个工程的 运行库设置不一样了:

项目属性 -> 配置属性 -> C/C++ -> 代码生成 -> 运行库

都设置一样就行了 多线程调试(/MTd)

error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MDd_DynamicDebug”不匹配值“MTd_StaticDebug”的更多相关文章

  1. error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MTd_StaticDebug”不匹配值“MDd_DynamicDebug

    属性1. 在工程上右键->属性->c/c++->代码生成->运行库 四个选项及含义分别如下: 1.1 /MDd:MD_DynamicDebug,我理解是 "共享DLL ...

  2. json_value.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MD_DynamicRelease”不匹配值“MT_StaticReleas

    注意版本的提示mD  mt 注意动态mfc 还是静态mfc

  3. (原)error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”

    转载请注明出处: http://www.cnblogs.com/darkknightzh/p/5577534.html 在debug下使用intel的mkl库时(release下无此问题),莫名的出现 ...

  4. error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项:值“0”不匹配值“2”

    error: vtkCommon.lib(vtkSmartPointerBase.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项:值“0”不 ...

  5. error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2

    使用VS2013版本引用外部的lib进行编译时候提示: 错误 25 error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项:  值“0”不匹配值“2”(jrtpl ...

  6. qt项目: error LNK2038: 检测到“_MSC_VER”的不匹配项: 值“1900”不匹配值“1800”

    error LNK2038: 检测到“_MSC_VER”的不匹配项:  值“1900”不匹配值“1800” 该错误 网上通常的解释是: 原因:由于你使用了vs2012,相比较vs2010以及之前的vs ...

  7. 【Visual Studio】error LNK2038: 检测到“_MSC_VER”的不匹配项: 值“1600”不匹配值“1800” (转)

    1.案例一 _MSC_VER 定义编译器的版本.下面是一些编译器版本的_MSC_VER值:MS VC++ 10.0 _MSC_VER = 1600MS VC++ 9.0 _MSC_VER = 1500 ...

  8. error LNK2038: 检测到“_MSC_VER”的不匹配项: 值“1600”不匹配值“1800”

    _MSC_VER 定义编译器的版本.下面是一些编译器版本的_MSC_VER值:MS VC++ 10.0 _MSC_VER = 1600MS VC++ 9.0 _MSC_VER = 1500MS VC+ ...

  9. error LNK2038: 检测到“_MSC_VER”的不匹配项: 值“1600”不匹配值“1700”

    原因:由于你使用了vs2012,相比较vs2010以及之前的vs为更高版本,致使msvc不兼容! 方法:在项目右键属性-配置属性-常规中,平台工具集选用为合适平台即可,我这里就选择 vs2010 (v ...

随机推荐

  1. IntelliJ IDEA 绝对好用快捷键

    最近根据自己的使用习惯整理了一下在windows下常用的一些快捷键,有些确实非常实用. 常用快捷键  键 作用 备注 Ctrl+F12 显示当前类的所有方法   F2 定位下一个错误位置   Alt ...

  2. [转]retina屏下支持0.5px边框的情况

    2014-12-31更新:截至到IOS8.1,safari仍不支持@supports待safari支持@supports, 就可以利用0.5px了! 2014-7-25更新:1. 修正dpr = 1. ...

  3. 前端CSS规范整理_转载、、、

    一.文件规范 1.文件均归档至约定的目录中. 具体要求通过豆瓣的CSS规范进行讲解: 所有的CSS分为两大类:通用类和业务类.通用的CSS文件,放在如下目录中: 基本样式库 /css/core 通用U ...

  4. jQuery.zTree的跳坑记录

    最近项目用到树型结构的交互,一开始并不打算选择zTree,为了项目进度我妥协了,这一妥协后果就是我进坑了,在2天的挣扎中,我终于跳出坑了,活了下来,有一些感慨纪录下来. 有一个业务场景需要2个树型结构 ...

  5. iTunes使用总结

    UDID查询 将设备连接至电脑,打开iTunes至设备摘要页面,鼠标点击"序列号"区域切换显示UDID

  6. 『AngularJS』$location 服务

    项目中关于 $location的用法 简介 $location服务解析在浏览器地址栏中的URL(基于window.location)并且让URL在你的应用中可用.改变在地址栏中的URL会作用到$loc ...

  7. bzoj1009矩阵快速面+kmp

    其实kmp真的很次要,求长度为20的kmp感觉真的有点杀鸡用牛刀 这题思路相当明确:一看题就是数位dp,一看n的大小就是矩阵 矩阵的构造用m*m比较方便,本来想写1*m的矩阵乘m*m的,但是感觉想起来 ...

  8. 文件处理命令:sed

    使用:sed [-nefr] actionaction:-i直接修改读取的档案内容,而不是由屏幕输出,-r表示支持延伸型正则表达式的语法.动作说明:[n1[,n2]] function n1,n2表示 ...

  9. BestCoder Round 70

    惨败,不能再嘲笑别人了,否则自己也会像别人那样倒霉 HDU 5615:http://acm.hdu.edu.cn/showproblem.php?pid=5615 求ax^2+bx+c能否拆成(px+ ...

  10. MarkDown笔记

    MarkDown是一种轻量级的标记语言,可以比较简洁地格式化文本,所以比较方便地产生可读性良好的文档. 可以使用Markdown: 整理知识,学习笔记 发布日记,杂文,所见所想 撰写发布技术文稿(代码 ...