搜索
bottom↓
回复: 31

IAR使用小心得:IAR编译Release方法

[复制链接]

出0入0汤圆

发表于 2010-12-23 18:49:31 | 显示全部楼层 |阅读模式
通常写程序,调试程序都是在Debug下。
当程序写完后,切换到Release下编译,很多时候,会有一大堆错误。
原因Debug与release设置不一样。
在Debug下写程序的过程中,对debug的设置有改动,而relase的设置没有变。

一个方法可以把debug的设置复制到relase上。
先把Release删除掉,然后以Debug为模板,新建一个Release。


(原文件名:Image0085.JPG)


(原文件名:Image0087.JPG)


(原文件名:Image0089.JPG)


(原文件名:Image0091.JPG)

阿莫论坛20周年了!感谢大家的支持与爱护!!

知道什么是神吗?其实神本来也是人,只不过神做了人做不到的事情 所以才成了神。 (头文字D, 杜汶泽)

出0入0汤圆

发表于 2010-12-23 21:34:03 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-12-23 22:21:00 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-12-23 23:11:45 | 显示全部楼层
debug 和 release有啥区别?

出0入0汤圆

发表于 2010-12-24 08:38:16 | 显示全部楼层
一直用debug的路过,呵呵。不知道release会缩减多少代码,,,

出0入0汤圆

发表于 2010-12-24 08:39:46 | 显示全部楼层
release 代码优化更佳,编译出来的下载文件更小

其他的请补充。

非常感谢楼主的提示,老是弄不好一直没敢用release

出0入0汤圆

发表于 2010-12-24 09:12:32 | 显示全部楼层
楼主,如果采用你的这种方法的话,debug和release这两种模式编译出的代码又有和差别?
虽然我也只用debug模式。

出0入0汤圆

发表于 2010-12-24 09:57:09 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-12-24 10:06:37 | 显示全部楼层
备用!!

出0入0汤圆

发表于 2010-12-24 10:19:54 | 显示全部楼层
release模式主要是优化级别更高, 所以代码更小.

出0入0汤圆

发表于 2010-12-29 12:31:14 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-1-1 16:12:22 | 显示全部楼层
2种编译的hex大小有差异,我的在debug下正常的,release编译了工作不正常了

出0入0汤圆

发表于 2011-1-8 22:33:55 | 显示全部楼层
自欺欺人

出0入0汤圆

发表于 2011-3-15 10:55:18 | 显示全部楼层
总算搞定这个问题了。

出0入0汤圆

发表于 2011-3-15 12:26:18 | 显示全部楼层
汗……把debug名字换成release就算了?debug包含调试信息和各种调试宏判定。反编译后可读性非常强……你就用把

出0入0汤圆

发表于 2011-4-4 19:03:38 | 显示全部楼层
学习。

出0入0汤圆

发表于 2011-4-4 19:54:54 | 显示全部楼层
古董帖子了,我按楼主的方法试了一下,Release与Debug模式下,所声称的代码量都是相同的啊?按道理说Release要比Debug生成代码要小很多才对的啊?这是怎么回事?

出0入0汤圆

发表于 2011-4-20 11:13:11 | 显示全部楼层
回复【16楼】lou0908
-----------------------------------------------------------------------

回复【16楼】lou0908
古董帖子了,我按楼主的方法试了一下,release与debug模式下,所声称的代码量都是相同的啊?按道理说release要比debug生成代码要小很多才对的啊?这是怎么回事?
-----------------------------------------------------------------------

同问!!!
0411芯片16384字节空间,程序写到 大概15900字节就满了。剩下400多字节用不了。
    15 356 bytes of CODE  memory
    497 bytes of DATA  memory (+ 80 absolute )
    531 bytes of CONST memory

Errors: 1
Warnings: none

出0入0汤圆

发表于 2011-4-20 12:46:23 | 显示全部楼层
单纯的复制然后把名字改成release是没有优化效果的,因为对编译、连接的设置和debug是一样的。

出0入0汤圆

发表于 2011-6-18 19:52:53 | 显示全部楼层
我试了一下,FLASH有减小一点点,RAM还是一样的,确实直接从DEBUG换到Release模式编译会出错,需要修改设置的

出0入0汤圆

发表于 2011-6-18 20:06:51 | 显示全部楼层
只是个名字而已,只要通过设置,debug又何尝不是release

出0入0汤圆

发表于 2011-6-18 20:09:47 | 显示全部楼层
同意Ls

出0入0汤圆

发表于 2011-7-13 00:24:50 | 显示全部楼层
mark!

出0入0汤圆

发表于 2011-7-22 15:48:38 | 显示全部楼层
支持了,灰常感谢

出0入0汤圆

发表于 2011-12-27 20:18:49 | 显示全部楼层
回复【楼主位】STM32W108  
-----------------------------------------------------------------------

非常感谢!!!!

出0入0汤圆

发表于 2012-5-17 16:23:44 | 显示全部楼层
这样设置还不如直接就debug模式了。是不是release模式下就不能住真了呢?

出0入0汤圆

发表于 2012-12-20 17:15:09 | 显示全部楼层
有意思吗?呵呵,想想楼主这方法,有点搞笑啊

出0入0汤圆

发表于 2012-12-20 17:21:51 | 显示全部楼层
人家这样设计的初衷应该是快速切换设置用的,现在弄两个一样的,呵呵。不过这个方法也挺方便,尤其建立工程的时候,毕竟大部分设置这两种模式是一样的,就是优化设置、全局宏定义什么的有些差别。

出0入0汤圆

发表于 2012-12-21 00:45:58 来自手机 | 显示全部楼层
如果设置一样没必要切换,生成的东西都是一样的

出0入0汤圆

发表于 2012-12-21 11:47:55 | 显示全部楼层
很明显没用,肯定要改具体设置的,这两天被IAR折腾死了,高富帅的开发环境果然不好用。。。

出0入17汤圆

发表于 2012-12-21 18:18:42 | 显示全部楼层
有点山寨的意思~

出0入0汤圆

发表于 2013-4-10 15:16:44 来自手机 | 显示全部楼层
路过.........
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片。注意:要连续压缩2次才能满足要求!!】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-7-24 03:24

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表