一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

有效提高編譯速度的方法

strongerHuang ? 來(lái)源:strongerHuang ? 作者:strongerHuang ? 2022-03-09 17:31 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

程序員做軟件開(kāi)發(fā),討厭一件事,那就是編譯代碼速度很慢的問(wèn)題。

編碼一分鐘,編譯十分鐘,這誰(shuí)能受的了?

今天就來(lái)說(shuō)說(shuō)嵌入式軟件開(kāi)發(fā)中,常見(jiàn)的提高編譯速度的一些操作或者方法。

換更高配置電腦

可能是絕大部分人首先想到的就是:換更高配置的電腦。

這也是其中一個(gè)辦法,但是,有幾家公司愿意給你換電腦?

所以,這個(gè)方法不現(xiàn)實(shí)。

減少編譯輸出文件

有些不必要的調(diào)試、瀏覽信息文件,在編譯時(shí)可以不用配置輸出,比如:

1.Keil MDK

Project -》 Options for Target -》 Output/Listing:

e06f1ae8-9641-11ec-952b-dac502259ad0.png

這里面的的配置,就會(huì)影響編譯速度,特別是Browse Information(瀏覽信息),使用Go to Definition Of 功能,就需要有這類文件。

如果勾選,就會(huì)輸出一些“編譯中間文件”,你在設(shè)置的輸出路徑下(默認(rèn)“Listings”和“Objects”)就有很多中間文件,這些文件在編譯過(guò)程都會(huì)占用編譯時(shí)間。

這些文件的內(nèi)容及作用可以參看文章:Keil系列教程_文件類型及相關(guān)描述

2.IAR EWARM

類似Keil MDK,IAR也有相關(guān)的輸出文件配置,比如:

Project -》 Options -》 C/C++ Compiler -》 output:

e0864682-9641-11ec-952b-dac502259ad0.png

在配置信息中也有很多相關(guān)與編譯相關(guān)的配置,會(huì)影響編譯速度。

IAR各種文件類型,可以參看文章:IAR系列教程_文件類型描述

3.命令行如果使用命令行編譯代碼,這個(gè)問(wèn)題就可以避免,編譯、鏈接、調(diào)試根據(jù)自己的需求輸入響應(yīng)的命令即可。

比如:

gcc test.c -o test

當(dāng)然,使用命令行,必須要熟記各種命令的用法。

換編譯工具鏈

這個(gè)和換電腦不同的是:換編譯器僅是軟件工具,不用看老板臉色。

比如:

Keil MDK 從AC5升級(jí)到AC6,速度就會(huì)快很多。

還可以將MDK的編譯器換成gcc編譯器:手把手教你在Keil MDK中使用GCC編譯器工具鏈

可以參看相關(guān)的文章:

帶你認(rèn)識(shí)AC6編譯器

編譯器AC5與AC6生成瀏覽信息的差異

AC5 和 AC6 優(yōu)化選項(xiàng)重要內(nèi)容和區(qū)別

優(yōu)化代碼

對(duì)于嵌入式代碼,大多都是C/C++代碼寫(xiě)的,都有#include xxx.h頭文件。

如果頭文件反復(fù)、多層包含,只要修改一個(gè)頭文件,有包含關(guān)系的頭文件、源文件都要進(jìn)行編譯一次,這樣也會(huì)影響編譯速度。

類似下圖這種,只要修改最底層一個(gè)文件,上層的文件都要編譯一遍:

e09b39de-9641-11ec-952b-dac502259ad0.jpg

推薦閱讀文章:軟件項(xiàng)目中引用頭文件的幾種方法及要點(diǎn)

最后,歡迎大家補(bǔ)充更多有效提高編譯速度的方法。

原文標(biāo)題:嵌入式開(kāi)發(fā) | 提高單片機(jī)代碼編譯速度的幾種方法

文章出處:【微信公眾號(hào):strongerHuang】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

審核編輯:彭菁

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 嵌入式軟件
    +關(guān)注

    關(guān)注

    4

    文章

    245

    瀏覽量

    27332
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4900

    瀏覽量

    70743
  • 編譯
    +關(guān)注

    關(guān)注

    0

    文章

    679

    瀏覽量

    33993

原文標(biāo)題:嵌入式開(kāi)發(fā) | 提高單片機(jī)代碼編譯速度的幾種方法

文章出處:【微信號(hào):strongerHuang,微信公眾號(hào):strongerHuang】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    如何讓OpenHarmony編譯速度“狂飆”

    OpenHarmony 有兩種編譯方式,一種是通過(guò) hb 工具編譯,一種是通過(guò) build.sh 腳本編譯。本文筆者將提升 build.sh 方式編譯
    的頭像 發(fā)表于 02-14 09:31 ?2356次閱讀

    求助:如何提高modelsim仿真速度?

    利用ise編寫(xiě)的fpga工程,采用modelsim進(jìn)行仿真,如何提高仿真的速度?這里提高速度指的不是優(yōu)化程序,而是采用提高電腦硬件配置,或者采用硬件加速,或者軟硬件聯(lián)合仿真的
    發(fā)表于 04-16 20:32

    CCS V5.3如何提高編譯速度?

    我目前在用CCS V5.3進(jìn)行項(xiàng)目開(kāi)發(fā),工程比較大,編譯很慢,全部編譯一次需要好幾分鐘。有沒(méi)有辦法提高速度?我記得keil MDK中只要在輸出選項(xiàng)中把Browse信息關(guān)閉就能顯著提高
    發(fā)表于 06-04 12:53

    提高Keil的編譯速度

    玩單片機(jī)或ARM等的友們常常拿Keil一IAR比較,那個(gè)好用那個(gè)不好用,除了習(xí)慣以外還有一個(gè)主要的原因是Keil通常在較大的項(xiàng)目上編譯下載速度較慢,而IAR相對(duì)較快。為此在網(wǎng)上搜了一些作參考,自已
    發(fā)表于 01-21 16:54

    有效提高RTOS性能的方法有哪些?

    ,TimeTick中斷函數(shù)占用的CPU時(shí)間已達(dá)到42%[1]。目前,RTOS軟件層面的研究已經(jīng)很成熟,那么,能有效提高RTOS性能的方法有哪些呢?
    發(fā)表于 08-07 07:08

    請(qǐng)問(wèn)有什么方法可以加快CCS人編譯速度?

    有什么方法可以加快CCS人編譯速度?使用CCS5.5,編譯一個(gè)工程很慢,怎么辦。
    發(fā)表于 08-10 04:06

    有什么方法可以提高晶體管的開(kāi)關(guān)速度呢?

    等效的提高開(kāi)關(guān)速度方法,較小R1值也會(huì)加快輸出波形的上升速度。2、使用肖特基箝位利用肖特基箝位也是提高晶體管開(kāi)關(guān)
    發(fā)表于 02-09 15:48

    講述增量編譯方法,提高Vivado編譯效率

    當(dāng)RTL代碼修改較少時(shí),使用增量編譯功能可以提高工程的編譯速度,Incremental Compile增量編譯是Vivado提供的一項(xiàng)高階功
    的頭像 發(fā)表于 01-22 17:27 ?1.1w次閱讀
    講述增量<b class='flag-5'>編譯</b><b class='flag-5'>方法</b>,<b class='flag-5'>提高</b>Vivado<b class='flag-5'>編譯</b>效率

    嵌入式軟件開(kāi)發(fā)中如何提高編譯速度

    程序員做軟件開(kāi)發(fā),討厭一件事,那就是編譯代碼速度很慢的問(wèn)題。 編碼一分鐘,編譯十分鐘,這誰(shuí)能受的了? 今天就來(lái)說(shuō)說(shuō)嵌入式軟件開(kāi)發(fā)中,常見(jiàn)的提高編譯
    的頭像 發(fā)表于 09-30 10:01 ?3530次閱讀

    DPU編譯應(yīng)用程序的不同方法

    當(dāng)我們進(jìn)入 NVIDIA BlueField DPU 應(yīng)用程序開(kāi)發(fā)的新世界,有效地設(shè)置構(gòu)建步驟非常重要,以便您能夠無(wú)縫地編碼→編譯→單元測(cè)試。在本文中,我介紹了 DPU 編譯應(yīng)用程序的不同方法
    的頭像 發(fā)表于 04-22 14:25 ?2077次閱讀
    DPU<b class='flag-5'>編譯</b>應(yīng)用程序的不同<b class='flag-5'>方法</b>

    提高晶體管開(kāi)關(guān)速度方法

    提高晶體管開(kāi)關(guān)速度方法可以通過(guò)減少晶體管的輸入電容來(lái)提高晶體管的開(kāi)關(guān)速度,這可以通過(guò)減少晶體管的輸入電容的大小來(lái)實(shí)現(xiàn)。
    發(fā)表于 02-24 15:54 ?2017次閱讀
    <b class='flag-5'>提高</b>晶體管開(kāi)關(guān)<b class='flag-5'>速度</b>的<b class='flag-5'>方法</b>

    如何提高編譯速度

    程序員做軟件開(kāi)發(fā),比較討厭一件事,那就是編譯代碼速度很慢的問(wèn)題。 尤其是C/C++代碼,編碼一分鐘,編譯一小時(shí)鐘,這誰(shuí)能受的了?
    的頭像 發(fā)表于 07-06 10:53 ?1690次閱讀
    如何<b class='flag-5'>提高</b><b class='flag-5'>編譯</b><b class='flag-5'>速度</b>

    有什么方法可以提高晶體管的開(kāi)關(guān)速度呢?

    有什么方法可以提高晶體管的開(kāi)關(guān)速度呢? 電子行業(yè)一直在尋求提高晶體管速度方法,以滿足高速和高性
    的頭像 發(fā)表于 01-12 11:18 ?1768次閱讀

    Keil編譯器優(yōu)化方法

    我們都知道,代碼是可以通過(guò)編譯器優(yōu)化的,有的時(shí)候,為了提高運(yùn)行速度或者減少代碼尺寸,會(huì)開(kāi)啟優(yōu)化選項(xiàng)。
    的頭像 發(fā)表于 10-23 16:35 ?2098次閱讀
    Keil<b class='flag-5'>編譯</b>器優(yōu)化<b class='flag-5'>方法</b>

    如何提高信噪比的有效方法

    信噪比(SNR)是指信號(hào)與噪聲的比例,是評(píng)價(jià)一個(gè)系統(tǒng)或設(shè)備性能的重要指標(biāo)。提高信噪比可以通過(guò)多種方法實(shí)現(xiàn),以下是一些有效方法: 一、增加信號(hào)強(qiáng)度
    的頭像 發(fā)表于 12-10 14:30 ?5501次閱讀