繁体   English   中英

VC ++ 2015不链接,但VC ++ 2012链接

[英]VC++ 2015 doesn't link but VC++ 2012 did

在将我们的项目从VS2012更新4迁移到VS2015更新3时遇到一个奇怪的错误。在解决方案中,一半的项目使用VC ++(MSVC 14.0)进行编译,一半的项目使用Intel C ++ 13.0进行编译。

一切都能正确编译。

链接时发生问题。 我收到类似这样的错误,似乎在std文件中...

Error   LNK2019 

unresolved external symbol 

"public: virtual void __cdecl std::basic_istream<wchar_t,struct
std::char_traits<wchar_t> >::_Add_vtordisp1(void)"
(?_Add_vtordisp1@?$basic_istream@_WU?$char_traits@_W@std@@@std@@UEAAXXZ) 

referenced in function 

"[thunk]:public: virtual void __cdecl std::basic_istream<wchar_t,struct
std::char_traits<wchar_t> >::_Add_vtordisp1`vtordisp{4294967292,128}'
(void)" (?_Add_vtordisp1@?$basic_istream@_WU?$char_traits@_W@std@@@std@@$4PPPPPPPM@IA@EAAXXZ)

我既不能使用秒杀解决方案来重现该错误,也不能给您提供发生错误的代码,因为它似乎在std

当我查看文件istream ,我发现类似#pragma vtordisp(push,2) //compiler bug workaroung但是我无法弄清楚它是什么错误或如何修复它。

任何线索/提示将不胜感激。

谢谢!

安装Windows 10 SDK,然后重新定位您的解决方案以使用此最新的SDK。 还要确保您的代码应正确迁移到VS 2015,并且与项目一起使用的依赖项应为VS 2015,否则将产生另一个错误。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM