1. 程式人生 > >嵌入式學習筆記(六) --程式的編譯和執行

嵌入式學習筆記(六) --程式的編譯和執行

    筆者前面已經學過了Linux的基本命令,vi編輯器的使用。那麼當我們編輯好一個.c檔案時,如何執行它呢!?

要知道一個程式跑起來要經過編譯和執行兩大過程。編譯將原始碼生成可執行檔案,然後執行檢視結果。

一、gcc編譯器

gcc(GNU Compiler)是GNU推出的多平臺編譯器,可將C、C++源程式編譯連線成可執行檔案,支援以下字尾:
.c             c語言原始碼
.h 程式所包含的標頭檔案
.i 已經預處理過的C原始碼檔案
.s 組合語言原始碼檔案

.o 編譯後的目標檔案

二、使用方法

1.     gcc –o hello hello.c

-o 輸出可執行檔案
-c 只要求編譯器輸出目的碼(.o檔案),而不必輸出可執行檔案

-g 用於除錯

hello是可執行檔案的名字(如果沒有填寫hello 預設是a.out),hello.c是你要編譯的程式碼!

2.     ./hello  檢視輸出結果

三、程式 編輯--編譯--執行--除錯 的完整過程

1.通過vi編輯器將程式寫好

2.使用gcc編譯器編譯

3.執行檢視結果

4.如果有錯誤(程式碼錯誤或者是邏輯錯誤),再返回去改正

5.再編譯執行....直到成功

問:有沒有搞錯,我的程式是要在板子上執行的,為什麼到你這就程式設計純Linux機上開發了!!?

答:gcc實際上是一個編譯器集,因為它不僅支援 C 語言編譯,還支援 C++, Ada,

Objective C 等許多語言。另外 GCC 對硬體平臺的支援,可以所無所不在,它不僅支援 X86處理器架構, 還支援 ARM, Motorola 68000, Motorola 8800,AtmelAVR,MIPS 等處理器架構。arm-linux-gcc 是基於 ARM 目標機的交叉編譯軟體,可以通過arm-linux-gcc完成 linux-arm的開發,所以只是換了一個編譯器,同時c開發性質不變。

相關連結