查看: 2407|回复: 2

Keil编译速度问题

[复制链接]
  • TA的每日心情
    开心
    2019-2-14 16:49
  • 签到天数: 296 天

    连续签到: 1 天

    [LV.8]以坛为家I

    241

    主题

    2239

    帖子

    6

    金牌会员

    Rank: 6Rank: 6

    积分
    4473
    最后登录
    2020-4-14
    发表于 2019-1-14 09:20:22 | 显示全部楼层 |阅读模式
    玩单片机或ARM等的友们常常拿Keil一IAR比较,那个好用那个不好用,除了习惯以外还有一个主要的原因是Keil通常在较大的项目上编译下载速度较慢,而IAR相对较快。为此在网上搜了一些作参考,自已再进行一些摸索得到Keil在如下情况的表现甚至超过IAR。
    本文讨论Keil的编译速度问题,分成两个部分。
    一、        通过三种不同的配置来说明对KEIL编译速度及库文件大小的影响
    KEIL uVisison的默认编译配置如图1:
    第一种配置:默认配置编译速度慢,编译库文件大,如图1所示:用时60秒
    第二种配置:去掉Debug Information和Browse Information后的配置图如图2所示:用时18秒[去掉HEX输出,与三一样17秒]
    第三种配置:仅输出为库文件,其它都去掉,配置见下图3所示:用时17秒
    所以第二、三种配置最好。
    二、        编译下载方式
    见下图4
    图左上有4个与编译有关的按钮。
    1是C编译,仅检查C语言正确与否。在修改书写了新的C语言之后,按此键检查,所以很快!
    2是仅对项目中修改过的文件进行检查和编译,速度也非常快!
    3是对项目所有文件检查和编译,当工程文件较大时会发现速度非常慢,有时可以让人晕睡过去的感觉。
    4是将编译过的生成可以下载到机器里的按键,速度较快。
    由上可知最慢的是3。
    A. 当新导入一个工程,拿STM来说,STM32CubeMX生成的项目,首次必须全部编译——按3键,再下载!
    B. 当项目已经过编译后,再修改其中的某个或多个文档,如果想C检查,按1键,或直接按2键,通过后,再按4键下载!
    就是说,在一般的修改和添加文档时,用B即可,速度相当快。甚至于比IAR下载还要快!
    以上为个人使用过程测试总结,供学习参考。


    1

    1

    2

    2

    3

    3

    4

    4
    回复

    使用道具 举报

  • TA的每日心情
    开心
    12 小时前
  • 签到天数: 2925 天

    连续签到: 16 天

    [LV.Master]伴坛终老

    23

    主题

    4140

    帖子

    82

    金牌会员

    Rank: 6Rank: 6

    积分
    13771
    最后登录
    2025-7-21
    发表于 2019-1-14 10:02:53 | 显示全部楼层
    其实还好吧。
    Keil只要不是全部编译,第一次需要完全编译一下,之后改什么文件编译什么就好了。
    用Build,不要动不动就Rebuild,就好了。
    个人不喜欢用.lib,不能跟踪调试,用.lib总有一种命运不自己掌握的感觉。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    擦汗
    昨天 22:51
  • 签到天数: 1847 天

    连续签到: 2 天

    [LV.Master]伴坛终老

    203

    主题

    3万

    帖子

    64

    超级版主

    Rank: 8Rank: 8

    积分
    112627
    最后登录
    2025-7-20
    发表于 2019-1-14 10:53:34 | 显示全部楼层
    在Windows开发的时候我喜欢用.lib或者dll。
    .LIB嘛,一定要是成熟得不能再成熟才使用,不然容易出现大坑。
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /3 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2025-7-21 13:08 , Processed in 0.088190 second(s), 22 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

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