码迷,mamicode.com
首页 > 编程语言 > 详细

VS2013解决error LNK2019: 无法解析的外部符号 mfcs120ud.lib

时间:2017-01-20 21:01:06      阅读:891      评论:0      收藏:0      [点我收藏+]

标签:c++   mfc   编译错误   error lnk2019   mfcs120ud.lib   

  最近因为要改一个MFC项目重写学习MFC,没想到只是用VS2013新建一个最简单的MFC项目运行就报类上百个的类似"Error LNK2019: 无法解析的外部符号...mfcs120ud.lib"的错误。

 经过一番折腾,终于发现问题所在.打开C:\Users\Administrator\AppData\Local\Microsoft\MSBuild\v4.0\Microsoft.Cpp.Win32.user.props

发现默认库引用了$(WindowsSDK_LibraryPath_x64),即引用了Windows SDK的64位版Lib库,而我的VS项目中的编译平台为Win32,Win32编译平台是不能和64位版本的lib或dll库兼容的.

技术分享

 另外我的项目默认的MFC库引用$(VCInstallDir)atlmfc\lib也是32位版,也不能和64位的Windows SDK兼容。这里我不想编译64位平台,所以必须把函数库版本和编译平台都设置为32位才行。解决方法很简单,只要把Microsoft.Cpp.Win32.user.props的$(WindowsSDK_LibraryPath_x64)改成$(WindowsSDK_LibraryPath_x86)即可。

 这里要吐槽一下VC++开发最蛋疼的就是各种编译不顺问题,由于很多开发库是不向下兼容的,导致各种Dll,Lib,或者编译器版本不对都会引发许多问题,另外还有不少开发环境配置问题。还是搞unity3d开比较爽啊,在unity3d集成开发环境下无论是谁写的多老的版本,稍作修改都可以一键完美升级,基本没有什么编译不过版本不兼容问题。当然,可以能是因为我对VC++开发不熟吧,解决这些杂七杂八的问题对自己也是一种提高。

本文出自 “飞涟IT” 博客,请务必保留此出处http://feilian.blog.51cto.com/12521095/1893472

VS2013解决error LNK2019: 无法解析的外部符号 mfcs120ud.lib

标签:c++   mfc   编译错误   error lnk2019   mfcs120ud.lib   

原文地址:http://feilian.blog.51cto.com/12521095/1893472

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!