msvcprtd.lib(MSVCP100D.dll) : error LNK2005: “public: __thiscall std::_Container_base12::~_Container_base12(void)”

发布于 2020-05-05  53 次阅读


问题描述:

1>msvcprtd.lib(MSVCP100D.dll) : error LNK2005: “public: __thiscall std::_Container_base12::~_Container_base12(void)” (??1_Container_base12@std@@QAE@XZ) 已经在 OgreBulletCollisions_d.lib(OgreBulletCollisionsCompoundShape.obj) 中定义

1>msvcprtd.lib(MSVCP100D.dll) : error LNK2005: “public: __thiscall std::_Container_base12::_Container_base12(void)” (??0_Container_base12@std@@QAE@XZ) 已经在 OgreBulletCollisions_d.lib(OgreBulletCollisionsCompoundShape.obj) 中定义

1>msvcprtd.lib(MSVCP100D.dll) : error LNK2005: “public: void __thiscall std::_Container_base12::_Orphan_all(void)” (?_Orphan_all@_Container_base12@std@@QAEXXZ) 已经在 OgreBulletCollisions_d.lib(OgreBulletCollisionsShape.obj) 中定义

1>msvcprtd.lib(MSVCP100D.dll) : error LNK2005: “public: struct std::_Iterator_base12 * * __thiscall std::_Container_base12::_Getpfirst(void)const ” (?_Getpfirst@_Container_base12@std@@QBEPAPAU_Iterator_base12@2@XZ) 已经在


解决方法:

msvcprtd.lib表示要用静态库,所以在生成要链接到这个项目的lib时,Debug版本lib生成选项要用/MTd,Release版本lib生成选项要用/MT。


一沙一世界,一花一天堂。君掌盛无边,刹那成永恒。