看著一大堆文件舒服嗎?
相信大部分朋友看見過類似上圖“凌亂”的現(xiàn)象。工程文件和編譯過程文件雜亂放在一起,其實(shí)只有.uvoptx和.uvprojx這兩個(gè)比較重要,其他大部分都不重要。
微主我習(xí)慣在工程文件中放一個(gè)“刪除編譯產(chǎn)生垃圾文件.bat”文件,在最后源代碼存檔時(shí)刪除編譯過程產(chǎn)生的文件。
寫在前面 1
本文說的“文件類型”指的是像.uvoptx、 .uvprojx、 .hex、 .map、 .axf、.ini、.c、.h···等一些后綴不同的文件,他們各自的作用和功能。
有時(shí)打開從其他地方獲取的源文件,發(fā)現(xiàn)除了工程文件“.uvprojx”之外還有很大雜七雜八的文件,如:.crf、.d、.o···等一些讓人看了都“煩躁”的源文件。
其實(shí)有很多文件都是在建立工程及編譯之后產(chǎn)生的“中間文件”,對于我們來說,并不需要保存,只是在編譯調(diào)試的過程中需要使用到。
當(dāng)我們需要使用保存一個(gè)工程及相關(guān)源代碼時(shí),就需要把有些不必要的中間文件刪除掉。于是,我們就需要知道這些文件的意思,哪些文件可以刪除,哪些不能刪除。
我們使用Go to Definition Of使用到的文件為.crf文件,有時(shí)候Go to Definition Of不能使用(或按F12不起作用),有可能就是相關(guān)的.crf文件被刪除了,或者沒有。
在線調(diào)試的時(shí)候,不能跟蹤調(diào)試,很有可能是沒有調(diào)試類型文件。
Keil中使用到的文件類型? 2
大體可以分為7類:
1、Project Files工程類型文件;
2、Source Files源代碼類型文件;
3、Listing Files鏈接類型文件;
4、Object and HEX Files目標(biāo)和Hex類型文件;
5、Build Files編譯類型文件;
6、Debugger Files調(diào)試類型文件;
7、Other Files其他類型文件。
下面章節(jié)會(huì)將常見的一些文件類型做詳細(xì)說明。
Project Files工程類型文件 3
工程類型文件是比較重要的,一般不能刪除。刪除之后有可能打不開軟件工程,所以,不能輕易刪除這一類文件。
.uvmpw:多工程(工作空間)文件;
.uvprojx:工程文件(Keil V5)
.uvproj:工程文件(Keil V4)
.uvoptx:工程選項(xiàng)配置文件(Keil V5)
.uvopt:工程選項(xiàng)配置文件(Keil V4)
.uv2:工程文件(Keil V3)
Source Files源代碼類型文件 4
這一類源文件,我想,應(yīng)該不用多說。主要就是源文件和頭文件,大體上有如下一些類型:
.c、 .h、 .cpp、 .inc、 .a51、 .s、 .a66、 .src等。
Listing Files鏈接類型文件 5
Project -> Options for Target -> Listing,如圖:
這類文件的輸出就在上圖的地方配置,需要輸出就勾選上。常見文件類型有如下幾種:
.map:MAP文件就是存儲(chǔ)鏡像文件,這個(gè)文件非常重要。當(dāng)代碼出現(xiàn)異常,對分析代碼非常有幫助,我打算后面專門寫一篇文章來講述這個(gè)文件。
.lst:C編譯器或匯編程序生成的文件;
.cod:包括混合C和匯編代碼的完整的程序清單文件;
Object and HEX Files目標(biāo)和Hex類型文件 6
Project -> Options for Target -> Output,如圖:
這一類文件比較重要,調(diào)試信息、預(yù)覽信息、可執(zhí)行文件等都在這里面。
.hex:可執(zhí)行文件(和.bin類似 用于下載到芯片的程序文件);
.axf:包含調(diào)試信息的程序文件,有時(shí)候我們在調(diào)試時(shí)出現(xiàn)錯(cuò)誤,可能是axf沒有文件;
.d:編譯生成的依賴文件,一般一個(gè).c文件對應(yīng)一個(gè).d文件;
.o:也是目標(biāo)的依賴文件(重定位定址的依賴文件);
.lib:庫文件,生成庫就在這里;
.elf:ELF/DWARF鏈接的文件;
.crf:瀏覽信息文件,在文章開頭說了,使用Go to Definition Of功能,就需要有這類文件。
剩下一些類型文件 7
Build Files編譯類型文件:
這一類文件重點(diǎn)提一下“bat批處理文件”,也就是說在編譯的時(shí)候,可以配合bat文件一起編譯。Bat文件主要就是一些命令,如拷貝、新建等。
Debugger Files調(diào)試類型文件:
.ini:調(diào)試加載類文件。就是在調(diào)試時(shí)加載的文件:
Other Files其他類型文件:
.pack:支持包文件;
.sct:鏈接控制文件;
.lnp:連接器傳遞命令文件;
·······
這類文件還有很多,重要性不強(qiáng),不一一說明了。
-
keil
+關(guān)注
關(guān)注
68文章
1207瀏覽量
166177 -
MAP
+關(guān)注
關(guān)注
0文章
48瀏覽量
15106 -
C編譯器
+關(guān)注
關(guān)注
1文章
39瀏覽量
13923 -
預(yù)處理器
+關(guān)注
關(guān)注
0文章
13瀏覽量
2213
發(fā)布評論請先 登錄
相關(guān)推薦
評論