近期编译cocos2d-x的test突然出现这个错误,又一次编译也无法解决。

一般出现这个错误是两个原因:一个是磁盘空间不足,还有一个是项目太大导致pdb文件太大,无法继续写入。

原本cocos2d-x的test项目里面的"调试信息格式"是“C7兼容(/z7)”,后来我习惯性的改动为/zI了。

MSDN中说的是:

不生成不论什么调试信息,因此编译较快。

/Z7

生成包括用于调试器的完整符号调试信息的 .obj 文件。 符号化调试信息包括变量的名称和类型以及函数和行号。 不生成不论什么
.pdb 文件。

对于第三方库的分发server,不生成 .pdb 文件是一个长处。 可是,在链接阶段和调试期间,用于预编译头的
.obj 文件是必需的。 假设 .pch 对象文件里仅仅有类型信息(没有代码),则还必须使用 /Yl(为调试库插入
PCH 引用)
 进行编译。

/Zi

生成一个程序数据库(PDB),当中包括供调试器使用的类型信息和符号化调试信息。 符号化调试信息包括变量的名称和类型以及函数和行号。

/Zi 不影响优化。 可是,/Zi 的确暗示了 /debug;有关很多其它信息,请參见 /DEBUG(生成调试信息)

类型信息放置在 .pdb 文件而不是 .obj 文件里。

能够将 /Gm(启用最小又一次生成) 和 /Zi 结合使用,但使用 /Z7 编译时不能使用 /Gm

使用 /Zi 和 /clr 编译时,DebuggableAttribute 特性将不会放置到程序集元数据中;假设要使用该特性,则必须在源码中指定它。 该特性可影响应用程序的执行时性能。 有关
Debuggable 特性怎样影响性能以及怎样减轻性能影响的很多其它信息,请參见令映像更易于调试

/ZI

採用支持“编辑并继续”功能的格式生成程序数据库(如上所述)。 假设想使用“编辑并继续”调试,则必须使用此选项。 由于大多数优化与“编辑并继续”不兼容,所以使用 /ZI 会禁用代码中的全部 #pragma
optimize 语句。

/ZI 会导致在编译中使用 /Gy(启用函数级链接) 和 /FC(所诊断源码文件的完整路径)

/ZI 与 /clr(公共语言执行时编译) 不兼容。

可见/Zi与/ZI区别不大,就是优化和信息完整度的区别,而/Z7则是把信息放在obj而不是pdb中,这样就不会发生pdb文件太大无法写入的问题了。



error C3130: 内部编译器错误: 未能将插入的代码块写入PDB的更多相关文章

  1. Win7下:编译器错误信息: CS0016: 未能写入输出文件

    错误如下: "/"应用程序中的服务器错误. 编译错误 说明: 在编译向该请求提供服务所需资源的过程中出现错误.请检查下列特定错误详细信息并适当地修改源代码. 编译器错误消息: CS ...

  2. 编译器错误消息: CS0016: 未能写入输出文件“c:/Windows/Microsoft.NET/Framework/v2.0.50727/....dll”--“拒绝访问。

    错误如下: “/”应用程序中的服务器错误. 编译错误 说明: 在编译向该请求提供服务所需资源的过程中出现错误.请检查下列特定错误详细信息并适当地修改源代码. 编译器错误消息: CS0016: 未能写入 ...

  3. 访问svc 文件,编译器错误消息: CS0016,未能写入输出文件

    编译错误              说明: 在编译向该请求提供服务所需资源的过程中出现错误.请检查下列特定错误详细信息并适当地修改源代码.             编译器错误消息: CS0016: 未 ...

  4. 编译器错误消息: CS0016: 未能写入输出文件

    “/”应用程序中的服务器错误. 编译错误 说明: 在编译向该请求提供服务所需资源的过程中出现错误.请检查下列特定错误详细信息并适当地修改源代码. 编译器错误消息: CS0016: 未能写入输出文件“c ...

  5. 错误解决:SharePoint Designer 2010编辑后,出现数据源控件未能执行插入命令,data source control failed to execute the insert command

    打了SharePoint 2010 最新的SP 2的补丁,但是使用SharePoint Designer 2010 定义任何一个列表的“插入视图”时,总是出现标题那样的错误: 数据源控件未能执行插入命 ...

  6. 引用 运行asp.net程序时候,编译器错误消息: CS0016: 未能写入输出文件“c:\WINDOWS\Microsoft.NET\Fra

    引用 运行asp.net程序时候,编译器错误消息: CS0016: 未能写入输出文件“c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary A ...

  7. IIS发布网站遇到 编译器错误消息: CS0016: 未能写入输出文件“c:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary 编

    编译错误: 说明:在编译向该请求提供服务所需资源的过程中出现错误.请检查下列特定错误详细信息并适当地修改源代码. 编译器错误消息:CS0016: 未能写入输出文件“c:\Windows\Microso ...

  8. Error-ASP.NET:编译器错误消息: CS0016: 未能写入输出文件

    ylbtech-Error-ASP.NET:编译器错误消息: CS0016: 未能写入输出文件 1.返回顶部 1. “/”应用程序中的服务器错误. 编译错误 说明: 在编译向该请求提供服务所需资源的过 ...

  9. C1853 编译器错误:fatal error C1853: 'pjtname.pch' precompiled header file is from a previous

    转载:https://www.cnblogs.com/emanlee/archive/2010/10/16/1852998.html 用VC++ 2008 编写C语言程序,编译出现错误: 预编译头文件 ...

随机推荐

  1. Java正则表达式例子汇总

    1.过滤特殊字符 package com.sheepmu.text; /* * @author sheepmu */ public class HWCompetition { public stati ...

  2. FTP文件操作之上传文件

    上传文件是一个比较常用的功能,前段时间就做了一个上传图片的模块.开始采用的是共享文件夹的方式,后来发现这种方法不太好.于是果断将其毙掉,后来选择采用FTP的方式进行上传.个人感觉FTP的方式还是比较好 ...

  3. chrome 关闭自己主动更新

    一不小心,把chrome更新成了37, chrome 37不支持模态窗体[ window.showModalDialog() ],折腾死人了. 实在抵不住,仅仅好降级成36.0.1985.143m 至 ...

  4. JList用法小结

    JList用法小结 分类: JAVA技术2007-08-11 01:02 18485人阅读 评论(11) 收藏 举报 stringvectorclassjavaactionobject         ...

  5. 【.NET进程通信】初探.NET中进程间通信的简单的实现

    转载请注明出处:http://blog.csdn.net/xiaoy_h/article/details/26090277 废话不多说,IPC就是进程间通信. 进程间通信能够採用的方法非常多,比方创建 ...

  6. Gray Code -- LeetCode

    原标题链接: http://oj.leetcode.com/problems/gray-code/  这道题要求求出n位的格雷码相应的二进制数,主要在于找到一种格雷码的递增方法(格雷码并非唯一的,能够 ...

  7. SQL Server -减少代码触发的负担

    触发器是一张表的增删改操作,引起或触发对还有一张表的增删改操作,所以触发器便有3种类型.各自是deleted触发器.Update触发器,insert触发器 触发器又依据替换原来的增删改操作,还是在原来 ...

  8. ROADS+dijkstra的灵活运用+POJ

    ROADS Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 10742   Accepted: 3949 Descriptio ...

  9. 视频和音频播放的演示最简单的例子6:OpenGL广播YUV420P(T经exture,采用Shader)

    ===================================================== 最简单的视频和音频播放的演示样品系列列表: 最简单的视音频播放演示样例1:总述 最简单的视音 ...

  10. 读改善c#代码157个建议:建议7~9

    目录: 建议7:将0值作为枚举的默认值 建议8:避免给枚举类型的元素提供显示的值 建议9:习惯运算符重载 一.建议7:将0值作为枚举的默认值 允许使用的枚举类型有:byte.sbyte.short.u ...