ZC:我的解决方式:
直接在项目中的makefile文件的最后一行加入MSC_WARNING_LEVEL=/W1
ZC:(20180602)如果 还是等级太高,要再降的话,可以"MSC_WARNING_LEVEL=/W0"
1、参考网页:error C2220_ warning treated as error - no object file generated的处理方法 - CSDN博客.html()
2、网页内容 复制:
网上搜索而来,保存
其实就是关掉编译选项的问题…
网上提得最多的就是修改 WDKPATH/i386.inc文件中的
MSC_WARNING_LEVEL=$(MSC_WARNING_LEVEL) $(COMPILER_WX_SWITCH)
MSC_WARNING_LEVEL=$(MSC_WARNING_LEVEL) $(COMPILER_WX_SWITCH)
MSC_WARNING_LEVEL=/W1 还有一个办法。。。其实大可不必去动inc文件。
当然也不是google里提到的在sources里面加,反正我是怎么加,加在哪个位置都不成功…
直接在项目中的makefile文件的最后一行加入
MSC_WARNING_LEVEL=/W1、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
这几天忙着把以前写的驱动转换到WDK的编译环境,遇到一个问题:
Free编译时:C2220: warning treated as error - no 'object' file generated出现这个问题是因为代码不严谨导致了。具体情况我也懒得去分析了。大家可以去搜索.对于懒人来说,解决方案是,修改当前驱动工程的sources文件,减低警告级别代码如下!if $(FREEBUILD)MSC_WARNING_LEVEL=/W1!elseMSC_WARNING_LEVEL=/W3!endif意思是:如果是Free编译时设置警告级别为1,否则默认为3、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
改变警告级别:
如果你遇到了以下错误,且不是代码的问题,则需要改变警告级别:error C2220: warning treated as error修改方法:
bin目录i386mk.inc的MSC_WARNING_LEVEL的值替换为 /W1添加一行,如下:MSC_WARNING_LEVEL=$(MSC_WARNING_LEVEL) $(COMPILER_WX_SWITCH)MSC_WARNING_LEVEL= /W13、
4、
5、