IAR的Workspace顶部下拉菜单中Debug 和Release区别.pdfVIP

IAR的Workspace顶部下拉菜单中Debug 和Release区别.pdf

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
IAR Workspace 顶部下拉菜单中Debug 和Release 区别 Hanson-he IAR 的Workspace 窗口顶部的下拉菜单中有两个选项,Debug 和Release 。名字和 数量可以 菜单栏的Project--Edit Configuration 中增删修改。每个选项都对应着一种配置 (也就是项目名称右击Options 里的内容),互相是独立的。所以用起来很方便,直接在不 同的配置间切换。 realse 版本与debug 版本的区别如下: DEBUG 版本和RELEASE 版本的区别:DEBUG 版本里会包括基本的调试信息,供开 发和调试使用;而RELEASE 版本不会包括调试信息,一般是发布给用户使用。所以你会 发现DEBUG 版本的SIZE RELEASE 版本会大许多。另外,RELEASE 版本 编译链接 的时候检查会更严格,所以有时候会出现DEBUG 版本能使用,而RELEASE 版本却会出 现一些问题的情况。编译器优化级别,链接器输出文件的格式(是否包含调试信息等) ,当 然,debug 和release 这两种build configuration 的属性, project 创建完之后是可以任意 修改的。 虽然可能 Release 版本下没有问题,但是并不等于说程序没有Bug,只是由于运行 库进行了优化和丢弃,问题没有明显的展现出来,这样隐含式的错误后期很难再找出来,即 使发现了,也由于编码的原因,修改困难。所以考虑还是在开发的阶段尽量的用debug 方 式编译和修改,当 debug 模式下没有问题以后再改为release 生成给客户运营用。 一、Debug 和 Release 编译方式的本质差别 Debug 通 称为调试版本,他包含调试信息,并且不作所有优化,便于程式员调试程 式。Release 称为发布版本,他往往是进行了各种优化,使得程式 代码大小和运行速度 上都是最优的,以便用户非 好地使用。Debug 和 Release 的真正秘密, 于一组编译 选项。下面列出了分别针对二者的选项(当然除此之外更有其他一些,如/Fd /Fo,但差别 并不重要,通 他们也不会引起 Release 版错误, 此不讨论)Debug 版本:/MDd /MLd 或 /MTd 使用 Debug runtime library (调试版本的运行时刻函数库); /Od 关闭优化开 关;/D _DEBUG 相当于 #define _DEBUG,打开编译调试代码开关 (主要针对assert 函 数);/ZI 创建 Edit and continue (编辑继续)数据库,这样 调试过程中如果修改了原始 码不需重新编译;/GZ 能帮助捕捉内存错误;/Gm 打开最小化重链接开关,减少链接时间. Release 版本:/MD /ML 或 /MT 使用发布版本的运行时刻函数库,/O1 或 /O2 优化开关, 使程式最小或最快,/D NDEBUG 关闭条件编译调试代码开关(即不编译assert 函数),/GF PDF created with pdfFactory Pro trial version 合并重复的字符串,并将字符串 量放到只读内存,防止被修改。实际上,Debug 和 Release 并没有本质的界限,他们只是一组编译选项的集合,编译器只是按照预定的选项 行动。事实上,我们甚至能修改这些选项,从而得到优化过的调试版本或是带跟踪语句的发 布版本。 再来逐个对照这些选项看看Release 版错误是怎样 生。runtime libr

文档评论(0)

喜宝 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档