RealView MDK使用小技巧(二)
在使用RealView MDK的過(guò)程中。積累了一些小的使用技巧,這些小技巧,平時(shí)可能不太引人注目,但如果注意到了,并養成好習慣,使用這些小技巧可以提高我們的工作效率,節省時(shí)間。
一、三種編譯方式的選擇
經(jīng)??吹接行┡笥言诰幾g源程序時(shí),總是點(diǎn)擊
,這個(gè)按扭的作用是重新編譯所有源文件,而不管以前這個(gè)工作是否被編譯,是否被修改過(guò)。我們知道,第一次編譯時(shí),會(huì )編譯所有的源文件,有些工程很大,源文件很多,這個(gè)過(guò)程比較慢長(cháng),有的多達幾分鐘。因此對于這些比較大的工程,為了節省時(shí)間,我們必須搞清楚這三個(gè)按鈕
的使用場(chǎng)合(為了描述的方便,我將這三個(gè)按鈕分別編號為1,2,3)。下面分別介紹這三個(gè)按鈕適合的場(chǎng)合。


第一個(gè)按鈕:它的作用是編譯當前的文件。這個(gè)按鈕的作用是只編譯單個(gè)文件,因此速度極快,這主要用于檢查某個(gè)文件是否有語(yǔ)法錯誤。比如在起動(dòng)代碼里增加了一段匯編程序,看看有沒(méi)有語(yǔ)法錯誤,就可以打開(kāi)起動(dòng)代碼文件,然后點(diǎn)擊第一個(gè)按鈕,即可很快地看到編譯結果。
第二個(gè)按鈕:它的作用是Build target。我們應該經(jīng)常使用的是這個(gè)按鈕,而不是第三個(gè)按鈕。這個(gè)按扭在第一次編譯時(shí)和第三個(gè)按鈕沒(méi)區別,都是對整個(gè)工程的所有源文件進(jìn)行編譯鏈接。但如果前面編譯鏈接過(guò)。由于對程序修改了少量地方,那么這時(shí)就應該使用這個(gè)按鈕了。點(diǎn)擊這個(gè)按鈕時(shí),編譯器會(huì )記錄上次編譯過(guò)的模塊,以及修改過(guò)的源程序,在這次編譯的過(guò)程中對那些沒(méi)修改過(guò)的源代碼并不進(jìn)行編譯而直接使用上次編譯的結果。這樣對于較大的工程將大大減小編譯鏈接時(shí)間,如果為了修改某一行代碼而錯誤地選擇第三個(gè)按鈕,那將浪費大量的時(shí)間。
第三個(gè)按鈕:它的作用是Rebuild all target files,即重新編譯所有的源文件,而與上次的編譯結果無(wú)關(guān)。我們應該盡量少用這個(gè)按鈕。當然有些情況我們需要使用這個(gè)按鈕,比如修改了優(yōu)化級別之后最好點(diǎn)這個(gè)銨鈕編譯。
說(shuō)到這里,讀者可能會(huì )有疑問(wèn),點(diǎn)第三個(gè)按鈕絕對沒(méi)錯,到底什么情況下點(diǎn)第二個(gè)按鈕不會(huì )有問(wèn)題又能節省時(shí)間呢。答案是當你僅修改了源程序,而沒(méi)對整個(gè)工程配置選項作修改時(shí),使用第二個(gè)按鈕是最好的選擇。
二、Project->Clean target命令的使用
這個(gè)命令的作用是清除編譯鏈接過(guò)程中生成的所有中間文件、目標文件以及可執行文件。還你一個(gè)清爽的工程文件夾。這個(gè)我們一般比較少用,當在打包放到互聯(lián)網(wǎng)上時(shí),可使用這個(gè)命令來(lái)減少工程占用空間。另外在將源代碼發(fā)放給客戶(hù)時(shí),可使用這個(gè)命令清除那些沒(méi)必要的文件。
該命令刪除的文件有:
1、 Object Folder文件夾中的可執行文件名并帶有以下后綴的文件,*.lnp,*.htm,*.elf,*.h86,*.hex,*.orc,*.sbr,*.cod,*.plg。
2、 Listing Folder文件夾中的可執行文件名并帶有以下后綴的文件,*.map,(對于C166還有*.m66,對C51還有*.m50)。
3、在Object Folder文件夾中所有后綴為*.obj,*.o,*._ii,*._ia,*.__i的文件。
4、在Listing Folder文件夾中所有后綴為*.lst的文件
評論