昨天在电脑上安装了VS2017+WDK了之后,遇到了一个很匪夷所思的问题:不管是编译任何工程,包括之前所有完全正常的项目,都会提示一个类似的错误:

1>------ 已启动生成: 项目: MyUSBEnum, 配置: Debug x64 ------
1>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\VC\VCTargets\Microsoft.CppBuild.targets(402,5): warning MSB8038: 已启用 Spectre 缓解,但找不到 Spectre 缓解库。验证 Visual Studio 工作负荷包括 Spectre 缓解库。有关详细信息,请参阅 https://aka.ms/Ofhn4c。
1>LINK : fatal error LNK1104: 无法打开文件“MSVCRTD.lib”
1>已完成生成项目“MyUSBEnum.vcxproj”的操作 - 失败。
========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========

换一个项目,提示的内容可能不完全一致,但是都是有一个MFC的库文件(比如mfc140d.lib等等)找不到。而这些工程之前明明都是OK的,完全没有问题的。这就奇怪了…

于是去百度、google、一大堆,各种尝试,很多人说是要修改项目配置,增加库文件的包含路径和头文件的包含路径。可是,这些项目我之前都是OK的,为什么会集体出现这个问题呢?肯定不是某个项目本身的配置的问题,于是继续查找…

最后,终于在微软的Developer Community里找到一篇帖子(点击此处跳转),官方技术人员提示需要安装libs for spectre(X86 and X64),这个组件在安装vs2017时默认不安装的。于是打开vs2017 installer,在单个组件tab中找到libs for spectre(X86 and X64),以及带有spectre缓解措施的ATL和MFC补丁,安装完成以后,再次编译C++ Project就可以通过了。如下:


搞定!

如何解决win10+VS2017+WDK环境下编译C++程序提示error LNK1104无法打开文件*.lib的问题相关推荐

  1. win10+VS2017+WDK环境下编译C++程序提示error LNK1104无法打开文件*.lib(mfc140ud.lib)的问题

    安装了VS2017+WDK了之后,编译其他比如MFC出现 已启用 Spectre 缓解,但找不到 Spectre 缓解库.验证 Visual Studio 工作负荷包括 Spectre 缓解库.有关详 ...

  2. fatal error LNK1104: 无法打开文件“***.lib“ 解决方法

    前言 我们在做一个工程时,工程内可能包括几个项目,每个项目负责一个子功能,最后在主项目中调用:很多时候这些项目都是以DLL的方式生成,那么我们在主项目调用DLL时,需要配置项目选项,如果配置不当,就会 ...

  3. VS中添加lib文件,编译出错:LINK : fatal error LNK1104: 无法打开文件:×××.lib解决办法

    添加库文件: 在VS中右击项目点属性: 添加头文件目录:   配置属性-->C/C++-->常规-->附加包含目录 加上头文件存放的目录.   添加lib文件:   配置属性--&g ...

  4. LINK : fatal error LNK1104: 无法打开文件“opencv_world400d.lib”---VS2017+OpenCV配置过程

    目录 问题1.关于LINK : fatal error LNK1104: 无法打开文件"opencv_world400d.lib"问题解决 问题2.调试opencv程序时总是提示: ...

  5. 编译问题解决:LINK : fatal error LNK1104: 无法打开文件“*.dll”

    一.引言 编译项目的时候,总会遇到些奇怪的问题,比如说以下这种: LINK : fatal error LNK1104: 无法打开文件"..\bin\utilitiesd.dll" ...

  6. 如何解决错误     error LNK1104: 无法打开文件“nafxcwd.lib”

    如何解决错误     error LNK1104: 无法打开文件"nafxcwd.lib"    终于找到了解决的办法,在网页上大家提供了几种方法,比如:更改多线程的模式:md.m ...

  7. VS报错:fatal error LNK1104: 无法打开文件“kernel32.lib”解决办法

    VS报错:fatal error LNK1104: 无法打开文件"kernel32.lib"解决办法 问题所在 解决方案一 解决方案二 问题所在 我使用VS是运行Fortran程序 ...

  8. 【c语言 gcc9.1.0环境下编译报错】error: ‘true’ undeclared (first use in this function)

    问题 网上验证一个单链表是否有环的c语言demo,放到gcc9.1.0的环境下编译,发现编译报错: error: 'true' undeclared (first use in this functi ...

  9. 在linux 下编译c程序时“ error:dereferencing pointer to incomplete type”的问题

    在linux 下编译c程序时经常会遇到" error:dereferencing pointer to incomplete type"的问题,该问题的原因是:结构体定义不规范造成 ...

最新文章

  1. Tcpdump配合Tcpreplay回放实现网络探测
  2. java序列化有什么用_java中序列化的作用
  3. linux容器进程号,linux下docker启动容器,查看容器、进程、日志等命令
  4. vm15不支持linux,每个处理程序的多个VMExtensions不支持操作系统类型'Linux
  5. UAV运动学方面的约束
  6. 用C#语言实现记事本
  7. GNU大型项目构建和覆盖率生成(第一篇)
  8. oracle sla 设置文档,Oracle EBS SLA 详解(转)
  9. Java实现简单的银行卡
  10. 用大白话聊聊JavaSE -- 如何理解Java Bean
  11. Android 6.0 屏幕旋转
  12. idea中整合redis中出现 Error creating bean with name ‘com.sxt.redis.RedisApplicationTests‘:
  13. 高德路径规划预估打车价格
  14. switchport mode access
  15. Web Workers API
  16. 3-2 数制转换计算器
  17. 2021四川省资阳市高考成绩查询,2021资阳中考查询系统
  18. Kony开发入门及学习路线介绍
  19. STM32CUBEMX+Eclipse构建项目过程
  20. hdu1290 献给杭电五十周年校庆的礼物

热门文章

  1. 软件之间的数据格式对接往往将_XRD数据格式的转换和TXT格式数据正确导入Jade的办法...
  2. php java 架构_JAVA和PHP到底谁才是老大?
  3. startActivityForResult用法详解
  4. UITableView 详解 教程
  5. [系统底层] x86和x64下ssdt的差异
  6. 聊聊ribbon的超时时间设置
  7. 【296天】我爱刷题系列055(2017.11.28)
  8. XXX集团财务决策支持系统——财务分析指标(系列五)
  9. OA应用分析:机电企业如何选型OA系统
  10. Socket 多线程FTP软件开发