0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何提高编译速度

strongerHuang 来源:strongerHuang 2023-07-06 10:53 次阅读

作者 | strongerHuang

程序员做软件开发,比较讨厌一件事,那就是编译代码速度很慢的问题。 尤其是C/C++代码,编码一分钟,编译一小时钟,这谁能受的了?

看到有小伙伴在讨论关于【如何提高编译速度】的话题,今天就来说说软件开发中,常见的提高编译速度的一些操作或者方法。

换更高配置电脑

可能是绝大部分人首先想到的就是:换更高配置的电脑。

这也是其中一个办法,大公司还好,但如果是小公司呢,有几家小公司愿意给你换电脑?

所以,这个方法对于很多小公司来说不现实。

优化代码

对于小项目而言,确实可以通过优化代码来提高编译速度,但问题是,小项目编译本身就不费时间。

而对于大项目,优化代码本身不是一件容易的事,需要投入大量的人力和物力。

再次,优化代码,不敢保证代码无bug,或者功能不出问题。也就是说潜在的风险比较大,特别是大项目。

所以,这个方法只适用于小项目,对于小公司的大项目,在时间紧急的情况下不现实。

换编译工具

和换电脑不同,换编译工具仅是软件工具,不用看老板脸色。

这种方法存在一个问题:兼容性问题。 如果你的软件项目不兼容对应的编译工具,就会存在一定的风险。

使用Incredibuild (快编大师)

去年接触了Incredibuild(快编大师),发现功能还是很强大,其中主打一个【编译速度快】。

什么是Incredibuild?

Incredibuild中文名叫快编大师,一种利用局域网中空闲 CPU云计算,为每台机器武装数百个内核,从而为耗时的软件开发加速。

直白的说:它可以缩短你项目的编译时间。以下是一些不同类项目的加速数据:

5070c39a-1b17-11ee-962d-dac502259ad0.png

507f8e16-1b17-11ee-962d-dac502259ad0.png

508c6afa-1b17-11ee-962d-dac502259ad0.png

50b506f4-1b17-11ee-962d-dac502259ad0.png

50ccb696-1b17-11ee-962d-dac502259ad0.png

50d91d6e-1b17-11ee-962d-dac502259ad0.png

快编的工作方式:

50e245a6-1b17-11ee-962d-dac502259ad0.png

它能做到:代码不变 • 流程不变 • 工具不变 • 大幅提速。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • cpu
    cpu
    +关注

    关注

    68

    文章

    10451

    浏览量

    206580
  • C++
    C++
    +关注

    关注

    21

    文章

    2066

    浏览量

    72901
  • 代码
    +关注

    关注

    30

    文章

    4556

    浏览量

    66810
  • 编译
    +关注

    关注

    0

    文章

    615

    浏览量

    32397

原文标题:C/C++编译太费时,如何破?

文章出处:【微信号:strongerHuang,微信公众号:strongerHuang】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    如何让OpenHarmony编译速度“狂飙”

    OpenHarmony 有两种编译方式,一种是通过 hb 工具编译,一种是通过 build.sh 脚本编译。本文笔者将提升 build.sh 方式编译
    的头像 发表于 02-14 09:31 1533次阅读

    请问Touchgfx Designer4.20如何配置图片、字体不参与程序编译

    参与编译,但是使用的时候需要先把要显示的字缓存一下,才能用,这样程序改动也很大。 求教一种方法,能够实现单独生成图片、字体,不参与程序的编译。当然图片、字体会有些索引,这些应该去不掉,所以总体想法就是如何减少参与编译的文件,
    发表于 03-15 06:41

    【WRTnode2R试用体验】WRTnode 2R SDK的搭建,固件的编译以及固件的刷写

    ,时间通常在半个小时到两个小时左右,第一次编译完成之后,之后的编译将会十分迅速。如果嫌编译速度慢,可以使用-j参数提高
    发表于 10-18 22:12

    CCS V5.3如何提高编译速度

    我目前在用CCS V5.3进行项目开发,工程比较大,编译很慢,全部编译一次需要好几分钟。有没有办法提高速度?我记得keil MDK中只要在输出选项中把Browse信息关闭就能显著提高
    发表于 06-04 12:53

    提高Keil的编译速度

    玩单片机或ARM等的友们常常拿Keil一IAR比较,那个好用那个不好用,除了习惯以外还有一个主要的原因是Keil通常在较大的项目上编译下载速度较慢,而IAR相对较快。为此在网上搜了一些作参考,自已
    发表于 01-21 16:54

    明远智睿MY-IMX28 Linux-3.14.54编译手册(2)

    *** 提示:这里为了提高编译速度,在make后面加了“-j4”。这里编译的Linux主机是双核4线程的,所以“-j”后面用了4,也就是采用4线程
    发表于 03-08 11:44

    NFS挂载网络文件系统学习

    下借助 编译工具去进行编译的,这个编译工具所运行的环境就是一个linux系统,我们学习的时候一般就是在虚拟机中完成, 在一些企业里面通常会配备linux服务器,这样方便协同开发,提高
    发表于 12-22 06:03

    ubuntu22.4 vscode安装ESP IDF出错的原因?如何解决?

    亲爱的FAE:为了提高编译速度而选择在ubuntu 22.4 下开发ESP32C3,安装VSCODE后又安装IDF插件出错,界面如下:file:///home/cici/%E5%9B%BE%E7
    发表于 02-14 08:48

    能否针对VSCODE+PLATFORMIO或ECLIPCE的调试配置过程出一个教程?

    载FLASH和传送数据,但在网上找了好多方法,但始终无法下载程序。3.ESP32-C3 调试过程如果不能DEBUG,还有别的调试方法吗?(串口打印太麻烦了)4.能否有提高编译速度的方法?如果能收到您的回复我会非常感谢!
    发表于 02-20 06:42

    求助,Touchgfx Designer4.20如何配置图片、字体不参与程序编译

    参与编译,但是使用的时候需要先把要显示的字缓存一下,才能用,这样程序改动也很大。 求教一种方法,能够实现单独生成图片、字体,不参与程序的编译。当然图片、字体会有些索引,这些应该去不掉,所以总体想法就是如何减少参与编译的文件,
    发表于 08-04 06:43

    请问Touchgfx Designer4.20如何配置图片、字体不参与程序编译

    参与编译,但是使用的时候需要先把要显示的字缓存一下,才能用,这样程序改动也很大。 求教一种方法,能够实现单独生成图片、字体,不参与程序的编译。当然图片、字体会有些索引,这些应该去不掉,所以总体想法就是如何减少参与编译的文件,
    发表于 08-09 07:25

    讲述增量编译方法,提高Vivado编译效率

    当RTL代码修改较少时,使用增量编译功能可以提高工程的编译速度,Incremental Compile增量编译是Vivado提供的一项高阶功
    的头像 发表于 01-22 17:27 9428次阅读
    讲述增量<b class='flag-5'>编译</b>方法,<b class='flag-5'>提高</b>Vivado<b class='flag-5'>编译</b>效率

    浅析C/C++代码并提高程序的编译速度

    代码的编译速度和代码的质量,可能与多种因素决定,今天给大家分享一下代码编译速度的问题。 硬件、编译器造成的 使用好点的电脑无疑是一个操作上的
    的头像 发表于 04-22 10:02 1503次阅读

    嵌入式软件开发中如何提高编译速度

    程序员做软件开发,讨厌一件事,那就是编译代码速度很慢的问题。 编码一分钟,编译十分钟,这谁能受的了? 今天就来说说嵌入式软件开发中,常见的提高编译
    的头像 发表于 09-30 10:01 3018次阅读

    有效提高编译速度的方法

    今天就来说说嵌入式软件开发中,常见的提高编译速度的一些操作或者方法。
    的头像 发表于 03-09 17:31 3742次阅读