错误的结果2......VC/bin/cl.exe返回的最终解决方案
转自:http://blog.csdn.net/mdjtf/article/details/5617292
今日心血来潮,看着臃肿的VC2008生成文件突生不满,试行优化。按照前辈们说的把项目属性都配置一次,报错误的结果2......VC/bin/cl.exe返回。于是反复找,郁闷地发现居然错在第一条的优化上,就是最小化大小、最大化速度那里。但是,难道就不优化了吗?那我还不如去用VC6了。
1、进行google,运行环境加了路径,不行。
2、为cl.exe加了缺少的MSPDB80.DLL文件,也不行。
3、输入:Msdev /useenv运行?我这是2008,要改成devenv /useenv,这次有点效果:生成cl.exe错误。这时发现路径全变了,但也是不行,再进来又恢复原状了。难不成非让我重装?vs2008+sp1+devexpress+boost+bcg……还是弄死我算了。一定要解决!
4、不小心看到了devenv有个参数叫做devenv /ResetSettings,可以恢复VS2008初始值。果然,运行后说正在“第一次安装”,我等。进去后发现运行路径果然恢复到原始值了,界面也和没设置时一样。再运行,还是一样的cl.exe返回错误。但是有了新发现。
5、程序运行时弹出了一个新窗口叫做“输出”的。里边写着生成日志保存在“file://d:/Founder/我的文档/Visual Studio 2008/Projects/xxxx/xxxx/Debug/BuildLog.htm”。打开,内容有:
输出窗口 正在编译...
cl: 命令行 error D8016 :“/O2”和“/ZI”命令行选项不兼容
项目 : error PRJ0002 : 错误的结果 2 (从“C:/Program Files/Microsoft Visual Studio 9.0/VC/bin/cl.exe”返回)。
经查是调试信息格式的用于“编辑并继续”的程序数据库(/ZI),改成禁用,继续。
6、报程序数据库管理器错误,这是因为我以前copy了一个mspdb80.dll在system32目录下,删掉,继续。
7、cl: 命令行 error D8016 :“/O1”和“/RTC1”命令行选项不兼容,改代码生成的基本运行时检查为默认值,继续。
8、................................终于成功了。