歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> GCC編譯器使用方法技巧總結

GCC編譯器使用方法技巧總結

日期:2017/3/1 9:37:37   编辑:Linux編程

GCC的常識

1、 gcc的全稱: GNU C Compiler ,是GNU的一款編譯器

2、 gcc通過後綴名來區別輸入文件的類型;

常用文件類型:.

c C語言源代碼文件

.C/.cc C++源代碼文件

.h 頭文件(head也即include)

.i 已經預處理過的C源代碼文件 //預處理:完成頭文件和宏定義的展開

.ii 已經預處理過的C++源代碼文件

.s 匯編語言的源代碼

.S 預編譯的匯編語言源代碼文件

.o 編譯後的目標文件object

GCC基本用法

1、 gcc編譯程序分為四個階段產生可執行程序:

Pre-Processing 預處理

gcc -E hello.c -o hello.i //完成頭文件和宏定義的展開,生成hello.i預處理文件

Compiling 編譯

gcc -S hello.i //生成匯編代碼,生成hello.s的匯編文件

Assembling 匯編

gcc -c hello.s //生成二進制目標文件,生成hello.o文件

Linking 鏈接

gcc hello.o -o hello //鏈接相關庫,生成可執行文件hello,沒有後綴

注:一般生成可執行程序,可以直接 : gcc hello.c -o hello

運行該可執行程序: ./hello

2、使用方法:

gcc +要編譯的文件+-o+編譯後生成的文件名 注:-o也即是output_filename,是指定編譯後生成的文件名,

不是編譯選項,如果沒指定則默認生成a.out可執行文件

eg: gcc hello.c -o hello //將hello.c編譯鏈接成可執行文件hello

gcc +[編譯選項]+要編譯的文件+-o+編譯後生成的文件名

常用選項:gcc -c hello.c //-c只編譯,不鏈接成可執行文件,生成 hello.o 的目標文件

gcc -O hello.c //-O對程序進行優化,使生成的可執行文件執行效率提高

gcc -O2 hello.c //-O2比-O更好的優化,是生成的可執行文件效率更高

執行方法: ./hello //執行當前目錄下的可執行文件,./表示當前目錄,要執行其他目錄的可執行文件,輸入該文件的路徑即可

測試執行速度:time ./hello //可以測試優化後的可執行文件的執行速度

Ubuntu 12.04嵌入式交叉編譯環境arm-linux-GCC搭建過程圖解 http://www.linuxidc.com/Linux/2013-06/85902.htm

Ubuntu 12.10安裝交叉編譯器arm-none-linux-gnueabi-GCC http://www.linuxidc.com/Linux/2013-03/82016.htm

Ubuntu下Vim+GCC+GDB安裝及使用 http://www.linuxidc.com/Linux/2013-01/78159.htm

Ubuntu下兩個GCC版本切換 http://www.linuxidc.com/Linux/2012-10/72284.htm

GCC 的詳細介紹:請點這裡
GCC 的下載地址:請點這裡

Copyright © Linux教程網 All Rights Reserved