国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

程序員提高代碼編譯速度,都怎么做的?

supernavy / 2346人閱讀

摘要:這些文件的內(nèi)容及作用可以參看文章系列教程文件類型及相關(guān)描述類似,也有相關(guān)的輸出文件配置,比如在配置信息中也有很多相關(guān)與編譯相關(guān)的配置,會(huì)影響編譯速度。

關(guān)注+星標(biāo)公眾號(hào),不錯(cuò)過(guò)精彩內(nèi)容

作者 |?strongerHuang

微信公眾號(hào) | 嵌入式專欄

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

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

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

換更高配置電腦

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

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

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

減少編譯輸出文件

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

1.Keil MDK

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

這里面的的配置,就會(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:

在配置信息中也有很多相關(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++代碼寫的,都有#include xxx.h頭文件。

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

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

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

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

------------?END?------------

后臺(tái)回復(fù)『嵌入式軟件設(shè)計(jì)與開發(fā)』『嵌入式C語(yǔ)言』閱讀更多相關(guān)文章。

歡迎關(guān)注我的公眾號(hào)回復(fù)“加群”按規(guī)則加入技術(shù)交流群,回復(fù)“1024”查看更多內(nèi)容。

歡迎關(guān)注我的視頻號(hào):

點(diǎn)擊“閱讀原文”查看更多分享,歡迎點(diǎn)分享、收藏、點(diǎn)贊、在看。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/121666.html

相關(guān)文章

  • WebAssembly 那些事兒

    摘要:的目標(biāo)是對(duì)高級(jí)程序中間表示的適當(dāng)?shù)图?jí)抽象,即代碼旨在由編譯器生成而不是由人來(lái)寫。表示把源代碼變成解釋器可以運(yùn)行的代碼所花的時(shí)間表示基線編譯器和優(yōu)化編 WebAssembly 那些事兒 什么是 WebAssembly? WebAssembly 是除 JavaScript 以外,另一種可以在網(wǎng)頁(yè)中運(yùn)行的編程語(yǔ)言,并且相比之下在某些功能和性能問(wèn)題上更具優(yōu)勢(shì),過(guò)去我們想在瀏覽器中運(yùn)行代碼來(lái)對(duì)網(wǎng)...

    邱勇 評(píng)論0 收藏0
  • 后端好書閱讀與推薦(續(xù))

    摘要:續(xù)前文后端好書閱讀與推薦,幾十天過(guò)去了,又看了兩本好書還有以前看過(guò)的書,這里依然把它們總結(jié)歸納一下,加入一些自己的看法有用的鏈接和可能的延伸閱讀,并推薦給需要的同學(xué)。 續(xù)前文 后端好書閱讀與推薦 - Mageek`s Wonderland ,幾十天過(guò)去了,又看了兩本好書(還有以前看過(guò)的書),這里依然把它們總結(jié)歸納一下,加入一些自己的看法、有用的鏈接和可能的延伸閱讀,并推薦給需要的同學(xué)。...

    劉福 評(píng)論0 收藏0
  • 后端好書閱讀與推薦(續(xù))

    摘要:續(xù)前文后端好書閱讀與推薦,幾十天過(guò)去了,又看了兩本好書還有以前看過(guò)的書,這里依然把它們總結(jié)歸納一下,加入一些自己的看法有用的鏈接和可能的延伸閱讀,并推薦給需要的同學(xué)。 續(xù)前文 后端好書閱讀與推薦 - Mageek`s Wonderland ,幾十天過(guò)去了,又看了兩本好書(還有以前看過(guò)的書),這里依然把它們總結(jié)歸納一下,加入一些自己的看法、有用的鏈接和可能的延伸閱讀,并推薦給需要的同學(xué)。...

    OnlyLing 評(píng)論0 收藏0
  • PHP應(yīng)用性能優(yōu)化指南

    摘要:怎樣才算是高性能的應(yīng)用性能和速度不是一對(duì)同義詞。紅線表示針對(duì)速度進(jìn)行了優(yōu)化的腳本,藍(lán)線是可擴(kuò)展性優(yōu)先的腳本。將任何這些功能置于循環(huán)中可能會(huì)導(dǎo)致性能問(wèn)題。完整的代碼檢測(cè)評(píng)估雖然可能很耗時(shí),但它可以為你提供有關(guān)應(yīng)用程序性能的深入信息。 showImg(https://segmentfault.com/img/bVNxDn?w=900&h=500);程序員都喜歡最新的PHP 7,因?yàn)樗筆H...

    EddieChan 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<