VS2015发布已经有一段时间了,最近有把之前的project从VS2013升级到VS2015,发现很多Error,如下:
1>LINK : fatal error LNK1104: cannot open file 'libucrtd.lib'
我们看到VS2015会主动去link "libucrtd.lib"这个lib,经过查找发现,他在这个目录:
Windows Kits\10\Lib\10.0.10586.0\ucrt
那么升级后需要将这个路径添加至library directory。
查了下MSDN,有一个宏定义可以找到这个路径
$(UniversalCRT_LibraryPath_x86)
$(UniversalCRT_LibraryPath_x64)
$(UniversalCRT_LibraryPath_arm)
同样,还有头文件的:
$(UniversalCRT_IncludePath)
那么ucrt到底是干什么用的呢?我们可以从这里找到答案:
https://blogs.msdn.microsoft.com/vcblog/2015/03/03/introducing-the-universal-crt/