linux學習之gcc使用

GCC Linux Vi 軟件 網絡菜鳥 2017-03-27

平時大家在寫程序代碼的時候主要藉助一些開發工具,vs 2010 、Vc6.0 、blockcodes 、Cfree等,我最開始學習些代碼的時候也是從這些入的門,後來看linux的時候,發現強大的便衣工具gcc,使用它更直觀的知道程序的預處理、編譯、鏈接。

首先,使用vi編輯器寫一段hello world程序

linux學習之gcc使用

-E gcc進行預處理後停止編譯,生成預處理之後的文件

-c 將預處理之後的文件編譯生成目標文件

-o 將生成的文件命名為指定名稱

linux學習之gcc使用

預處理階段

linux學習之gcc使用

編譯階段

linux學習之gcc使用

鏈接生成可執行程序

linux學習之gcc使用

執行可執行文件,由於後面沒有加換行符,看起來不很美觀。

注意:當然我們在編譯C代碼的過程中不需要一步步執行來生成可執行程序,可以直接一步生成可執行代碼

linux學習之gcc使用

在採用模塊化的設計思想進行軟件開發時,通常整個程序是由多個源文件組成的,相應地也就形成了多個編譯單元,使用GCC能夠很好地管理這些編譯單元。

假設有一個由foo1.c和foo2.c兩個源文件組成的程序,為了對它們進行編譯,並最終生成可執行程序foo,可以使用下面這條命令:

gcc foo1.c foo2.c -o foo

如果同時處理的文件不止一個,GCC仍然會按照預處理、編譯和鏈接的過程依次進行。如果深究起來,上面這條命令大致相當於依次執行如下三條命令:

gcc -c foo1.c -o foo1.o

gcc -c foo2.c -o foo2.o

gcc foo1.o foo2.o -o foo

參考文件:http://www.cnblogs.com/avril/archive/2009/12/06/1617938.html

相關推薦

推薦中...