arm linux gcc常用引數

2021-08-19 04:08:21 字數 1520 閱讀 5638

arm-linux-gcc 引數:

0.arm-linux-gcc -o example example.c

不加-c、-s、-e引數,編譯器將執行預處理、編譯、彙編、連線操作直接生成可執行**。

-o引數用於指定輸出的檔案,輸出檔名為example,如果不指定輸出檔案,則預設輸出a.out

1. arm-linux-gcc -c -o example.o example.c

-c引數將對源程式example.c進行預處理、編譯、彙編操作,生成example.o檔案

去掉指定輸出選項"-o example.o"自動輸出為example.o,所以說在這裡-o加不加都可以

2.arm-linux-gcc -s -o example.s example.c

-s引數將對源程式example.c進行預處理、編譯,生成example.s檔案

-o選項同上

3.arm-linux-gcc -e -o example.i example.c

-e引數將對源程式example.c進行預處理,生成example.i檔案

就是將#include,#define等進行檔案插入及巨集擴充套件等操作。

4.arm-linux-gcc -v -o example example.c

加上-v引數,顯示編譯時的詳細資訊,編譯器的版本,編譯過程等。

5.arm-linux-gcc -g -o example example.c

-g選項,加入gdb能夠使用的除錯資訊,使用gdb除錯時比較方便。

6.arm-linux-gcc -wall -o example example.c

-wall選項開啟了所有需要注意的警告資訊,像在宣告之前就使用的函式,宣告後卻沒有使用的變數等。

7.arm-linux-gcc -ox -o example example.c

-ox使用優化選項,x的值為空、0、1、2、3

8.arm-linux-gcc –static -o libexample.a example.c

靜態鏈結庫檔案

arm-linux-ld 引數:

arm-linux-ld -t***.lds -o output_elf source_o

-t指定lds鏈結指令碼 

-o指定輸出檔案

arm-linux-objcopy 引數:

arm-linux-objcopy被用來複製乙個目標檔案的內容到另乙個檔案中.此選項可以進行格式的轉換.

在實際程式設計的,用的最多的就是將elf格式的可執行檔案轉換為二進位制檔案.

arm-linux-objcopy -o binary -s source_elf output_bin

-o 輸出的格式

-s 不從原始檔中複製重定位資訊和符號資訊到目標檔案中

arm-linux-objdump 引數:

arm-linux-objdump -d -m arm ***.elf > ***.dis

-d 顯示檔案中所有彙編資訊

-m machine (上面-m arm 指定生成arm架構的反彙編**)

arm linux gcc常用引數

需要編譯出執行在arm平台上的 所使用的交叉編譯器為 arm linux gcc。下面將arm linux gcc編譯工具的一些常用命令引數介紹給大家。在此之前首先介紹下編譯器的工作過程,在使用gcc編譯程式時,編譯過程分為四個階段 1.預處理 pre processing 2.編譯 compili...

gcc和arm linux gcc的常用選項

gcc和arm linux gcc的常用選項 gcc的使用方法 gcc 選項 檔名 gcc常用選項 v 檢視gcc編譯器的版本,顯示gcc執行時的詳細過程 o place the output into 指定輸出檔名為file,這個名稱不能跟源檔名同名 e preprocess only do no...

gcc和arm linux gcc的常用選項

gcc和arm linux gcc的常用選項 gcc的使用方法 gcc 選項 檔名 我們日常生活中所說的編譯,其實包含 1 預處理,2 編譯,3 彙編,4 鏈結這四部分 1 預處理 c c 原始檔中,以 號開頭的命令被稱為預處理命令,如包含命令 linclude 巨集定義命令 define 條件編譯...