“错误 D8016 “/ZI”和“/Gy-”命令行选项不兼容 ” VC2017解决
大胸弟:来都来了,不点点关注,不点点赞 ,您是不是有点太不讲武德了!谢谢您
VC2017 打开以前版本的项目,编译出现如下错误:
/Zi
生成一个程序数据库(PDB),其中包含供调试器使用的类型信息和符号化调试信息。 符号化调试信息包含变量的名称和类型以及函数和行号。
/Zi 不影响优化。 但是,/Zi 的确暗示了 /debug;
类型信息放置在 .pdb 文件而不是 .obj 文件中。
/ZI就是生成调试信息,当程序崩溃时可以通过这个PDB来调试程序,定位崩溃的位置
/Gy(启用函数级链接)
备注
链接器要求将函数单独打包为 COMDAT,以排除 DLL 或 .exe 文件中的各个函数或排序各个函数。
您可以使用链接器选项/OPT(优化)从 .exe 文件中排除未引用的打包函数。
您可以使用链接器选项/ORDER(按顺序排列函数)在 .exe 文件中按指定顺序包含打包函数。
如果内联函数被实例化为调用(例如,如果内联已关闭或您获取函数地址),则始终打包它们。 此外,C++类声明中定义的成员函数将自动打包;其他函数不是,选择此选项是将它们编译为打包函数所必需的。
备注
用于 选项会自动设置 /Gy选项。
意思是说
备注
链接器要求将函数单独打包为 COMDAT,以排除 DLL 或 .exe 文件中的各个函数或排序各个函数。
您可以使用链接器选项/OPT(优化)从 .exe 文件中排除未引用的打包函数。
您可以使用链接器选项/ORDER(按顺序排列函数)在 .exe 文件中按指定顺序包含打包函数。
如果内联函数被实例化为调用(例如,如果内联已关闭或您获取函数地址),则始终打包它们。 此外,C++类声明中定义的成员函数将自动打包;其他函数不是,选择此选项是将它们编译为打包函数所必需的。
备注
用于编辑和继续的/ZI选项会自动设置 /Gy选项。
意思是说: 编辑和继续的/ZI与/Gy 会同时启用。。。
VC6, VC7, VC8等 早期的项目,你现在用高的IDE打开时,这个时候是不支持 编辑和继续的/ZI 功能, 因为你还没有开始编译,所有我们需要 相关编译参数。。。。
未修改之前:调试格式信息如下:
右键项目工程:
然后选择项目属性:
我们把 这改为
这样就可以通过编译了。。。。。。
当然有些特殊的项目,引入的项目特别多
可能还需要修改
改为:
应该都可以编译通过了。。。。。
“错误 D8016 “/ZI”和“/Gy-”命令行选项不兼容 ” VC2017解决相关推荐
- D8016 “/ZI”和“/clr”命令行选项不兼容
- “/Ox”和“/RTC1”命令行选项不兼容 或者 ml.exe 退出
属性->配置属性->C/C++->优化 优化 /Od,/O1,/O2,/Ox C/C++->基本运行时检查 两者(/RTC1,等同于/RTCsu) 优化禁用 ml.exe ...
- VS2022“clr“和“zw“命令行选项不兼容
用visual stdio 2022写项目时,不小心把某个选项设置错了.然后就报了一系列错误: 一开始是在百度和edge上面搜,但是搜了好多,还是搜不到,那些方法都不能完美的解决这个问题:先记录一下踩 ...
- Visual C++——Visual C++ 6.0 转 Visual Studio[Visual C++]编译错误[错误 D8016 “/ZI”和“/Gy-”命令行选项不兼容]解决方案
问题描述 问题分析 暂无. 解决方案 VS2019调试中出现上述问题,我们需要手动改变 /ZI 命令行选项 或者 /Gy 命令行选项, 进入"项目"->"属性&qu ...
- 解决“错误 D8016 “/ZI”和“/Gy-”命令行选项不兼容 ”问题
VS2015调试中出现上述问题,我们需要手动改变/ZI命令行选项 或者 /Gy命令行选项, 进入"项目"->"属性"->"C/C++&qu ...
- 1>cl : 命令行 warning D9035: “Gm”选项已否决,并将在将来的版本中移除1>cl : 命令行 error D8016: “/ZI”和“/Gy-”命令行选项不兼容
VS2017报告错误: 1>cl : 命令行 warning D9035: "Gm"选项已否决,并将在将来的版本中移除 1>cl : 命令行 error ...
- 解决“错误 D8016 “/ZI”和“/Gy-”命令行选项不兼容 ”问题
解决"错误 D8016 "/ZI"和"/Gy-"命令行选项不兼容 "问题 参考文章: (1)解决"错误 D8016 "/ ...
- C++-问题(1)-解决“错误 D8016 “/ZI”和“/Gy-”命令行选项不兼容 ”-VS2019
问题描述: 解决方法:手动更改 /ZI命令行选项 或者 /Gy命令行选项: 1.进入"项目"->"属性"->"C/C++" 2. ...
- D8016“/ZI”和“/Gy-”命令行选项不兼容问题的解决
1.问题描述: VS2015调试中出现了下面的问题: 2.解决办法: 需要手动改变/ZI命令行选项 或者 /Gy命令行选项.进入"项目"->"属性"-&g ...
最新文章
- 读微型计算机原理与接口技术 段的理解
- luoguP2479 [SDOI2010]捉迷藏
- 炼一项专业技能c语言,C语言程序设计_安徽新华电脑专修学院
- sqlserver 中的exec问题
- laravel increment出现了翻倍递增_中国股市:如何判断“强庄股”的出现,看懂主力心甘情愿送钱上门...
- 官方回应:钟南山院士是此次关于曹雪涛等论文调查复核专家组组长
- linux嵌入式工作室,【课程培训】嵌入式linux驱动开发系列教程 | linux2web工作室...
- Leetcode122. 买卖股票的最佳时机 II(贪心)
- pdf介绍及pdf相关软件(内容来自百度百科)
- jflash合并bin文件及hex文件
- 我,30岁,部队服役5年,零基础转大数据
- python计算手机销量年增长率_「净资产增长率」Python量化数据获取:总资产同比增长率与净资产同比增长率 - seo实验室...
- Python学习_038.列表_排序_revered逆序_max_min_sum
- C语言,将1~9这9个数字分成三组,每组中的三个数排成一个三位的完全平方数,要求每个数字必须且只能用一次
- Java随笔记录第二章:输入输出流程控制
- 支付宝积分兑换的扫地机器人好用_如何选购扫地机器人?
- Delphi 编写数字签名验证并获取签名信息
- 【转载】纳兰性德的诗词全集
- 元宇宙版权保护的相关调查:韩国视角
- P25 Scanner类