STM32W108 发表于 2010-12-23 18:49:31

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

通常写程序,调试程序都是在Debug下。
当程序写完后,切换到Release下编译,很多时候,会有一大堆错误。
原因Debug与release设置不一样。
在Debug下写程序的过程中,对debug的设置有改动,而relase的设置没有变。

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

http://cache.amobbs.com/bbs_upload782111/files_35/ourdev_606709RZ2MZK.JPG
(原文件名:Image0085.JPG)

http://cache.amobbs.com/bbs_upload782111/files_35/ourdev_606710GENIP1.JPG
(原文件名:Image0087.JPG)

http://cache.amobbs.com/bbs_upload782111/files_35/ourdev_606711BFMIBX.JPG
(原文件名:Image0089.JPG)

http://cache.amobbs.com/bbs_upload782111/files_35/ourdev_606712Y14XCP.JPG
(原文件名:Image0091.JPG)

afei8856 发表于 2010-12-23 21:34:03

mark

kneken 发表于 2010-12-23 22:21:00

mark

heky 发表于 2010-12-23 23:11:45

debug 和 release有啥区别?

zhiwei 发表于 2010-12-24 08:38:16

一直用debug的路过,呵呵。不知道release会缩减多少代码,,,

xieguangye 发表于 2010-12-24 08:39:46

release 代码优化更佳,编译出来的下载文件更小

其他的请补充。

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

xinbadaz 发表于 2010-12-24 09:12:32

楼主,如果采用你的这种方法的话,debug和release这两种模式编译出的代码又有和差别?
虽然我也只用debug模式。

byin 发表于 2010-12-24 09:57:09

mark

lixupeng 发表于 2010-12-24 10:06:37

备用!!

KongQuan 发表于 2010-12-24 10:19:54

release模式主要是优化级别更高, 所以代码更小.

xuejianhua1986 发表于 2010-12-29 12:31:14

mark

xuejianhua1986 发表于 2011-1-1 16:12:22

2种编译的hex大小有差异,我的在debug下正常的,release编译了工作不正常了

easier 发表于 2011-1-8 22:33:55

自欺欺人

chen20061084 发表于 2011-3-15 10:55:18

总算搞定这个问题了。

hemjidn 发表于 2011-3-15 12:26:18

汗……把debug名字换成release就算了?debug包含调试信息和各种调试宏判定。反编译后可读性非常强……你就用把

xinjie1023 发表于 2011-4-4 19:03:38

学习。

lou0908 发表于 2011-4-4 19:54:54

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

fengyupu 发表于 2011-4-20 11:13:11

回复【16楼】lou0908
-----------------------------------------------------------------------

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

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

Errors: 1
Warnings: none

lycsqq 发表于 2011-4-20 12:46:23

单纯的复制然后把名字改成release是没有优化效果的,因为对编译、连接的设置和debug是一样的。

cyr_hongfeng 发表于 2011-6-18 19:52:53

我试了一下,FLASH有减小一点点,RAM还是一样的,确实直接从DEBUG换到Release模式编译会出错,需要修改设置的

yfpbird 发表于 2011-6-18 20:06:51

只是个名字而已,只要通过设置,debug又何尝不是release

orange2348 发表于 2011-6-18 20:09:47

同意Ls

Inside 发表于 2011-7-13 00:24:50

mark!

Mleaf 发表于 2011-7-22 15:48:38

支持了,灰常感谢

hyf372018331 发表于 2011-12-27 20:18:49

回复【楼主位】STM32W108
-----------------------------------------------------------------------

非常感谢!!!!

bosw83 发表于 2012-5-17 16:23:44

这样设置还不如直接就debug模式了。是不是release模式下就不能住真了呢?

zhenghe 发表于 2012-12-20 17:15:09

有意思吗?呵呵,想想楼主这方法,有点搞笑啊{:titter:}

zhenghe 发表于 2012-12-20 17:21:51

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

tsb0574 发表于 2012-12-21 00:45:58

如果设置一样没必要切换,生成的东西都是一样的

error_dan 发表于 2012-12-21 11:47:55

很明显没用,肯定要改具体设置的,这两天被IAR折腾死了,高富帅的开发环境果然不好用。。。

llysc 发表于 2012-12-21 18:18:42

有点山寨的意思~

jz701209李 发表于 2013-4-10 15:16:44

路过.........
页: [1]
查看完整版本: IAR使用小心得:IAR编译Release方法