您的位置首页生活百科

怎样处理“error C2220: warning trea...”错误

怎样处理“error C2220: warning trea...”错误

的有关信息介绍如下:

怎样处理“error C2220: warning trea...”错误

最近在编译libMXF开源库时,出现了“error C2220: warning treated as error - no 'object' file generated”错误,编译环境为VS2010,libMXF版本为1.0.0。

本文介绍解决办法。

编译时,出现的错误信息如下:

1>d:\temp\libmxf-src-1.0.0\libmxf\lib\mxf\mxf_utils.c(265): error C2220: warning treated as error - no 'object' file generated

1>d:\temp\libmxf-src-1.0.0\libmxf\lib\mxf\mxf_utils.c(265): warning C4996: '_snprintf': This function or variable may be unsafe. Consider using _snprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.

1> c:\program files (x86)\microsoft visual studio 10.0\vc\include\stdio.h(363) : see declaration of '_snprintf'

1>d:\temp\libmxf-src-1.0.0\libmxf\lib\mxf\mxf_utils.c(303): warning C4996: '_snprintf': This function or variable may be unsafe. Consider using _snprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.

1> c:\program files (x86)\microsoft visual studio 10.0\vc\include\stdio.h(363) : see declaration of '_snprintf'

1> mxf_primer.c

1> mxf_partition.c

1> mxf_page_file.c

1>d:\temp\libmxf-src-1.0.0\libmxf\lib\utils\mxf_page_file.c(273): error C2220: warning treated as error - no 'object' file generated

1>d:\temp\libmxf-src-1.0.0\libmxf\lib\utils\mxf_page_file.c(273): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.

1> c:\program files (x86)\microsoft visual studio 10.0\vc\include\stdio.h(371) : see declaration of 'sprintf'

1>d:\temp\libmxf-src-1.0.0\libmxf\lib\utils\mxf_page_file.c(280): warning C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.

1> c:\program files (x86)\microsoft visual studio 10.0\vc\include\stdio.h(234) : see declaration of 'fopen'

1>d:\temp\libmxf-src-1.0.0\libmxf\lib\utils\mxf_page_file.c(289): warning C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.

1> c:\program files (x86)\microsoft visual studio 10.0\vc\include\stdio.h(234) : see declaration of 'fopen'

产生原因为:SDK中的solution文件是用VS2003.net产生的,我的VS版本为VS2010,转换后,有些Project编译选项中,Treat Warnings As Errors(把警告看作错误来处理)选项开启了。

只要把此选项关闭,就可以正常编译了。

在Solution中,选择libMXF工程,右键菜单中选择“Properties”。弹出的属性框中,将Configuration选择“All Configurations”,选择“C/C++/General/”,右侧Treat Warnings As Errors值从原来的“Yes(/WX)”改为“No(/WX-)”。

点击确定,再重新编译,即可。