gcc 引數
gcc工作流程
預處理—E: 巨集替換,標頭檔案展開,註釋去掉,xxx.c->xxx.i(c檔案)
編譯—S :xxx.i->xxx.s(彙編檔案)
彙編—C:xxx.s->xxx.o(二進位制檔案)
連結:xxx.o->xxx(可執行)
gcc 常用引數
-v/--version 檢視版本
-I : 編譯的時候指定標頭檔案的路徑 gcc 檔名 -I 路徑 -o 生成檔案的名字
-c: 生成一個.o檔案(二進位制檔案)
-o: 指定生成檔案的名字
-g: gdb除錯的時候需要加
-D: 在編譯的時候指定一個巨集 (使用場景:測試程式的時候)
-Wall: 新增警告資訊
-On: 優化程式碼 n是優化級別: 1,2,3
相關推薦
gcc 引數
gcc工作流程 預處理—E: 巨集替換,標頭檔案展開,註釋去掉,xxx.c->xxx.i(c檔案) 編譯—S :xxx.i->xxx.s(彙編檔案) 彙編—C:xxx.s->xxx.o(二進位制檔案) 連結:xxx.o->xxx
GCC引數含義
-fPIC : 該選項用於生成位置無關的程式碼 -shared : 將-fPIC生成的位置無關的程式碼作為動態庫,一般情況下,-fPIC和-shared都是一起使用的。生成SO檔案,共享庫 -static :
GCC引數詳解(from: http://oisp.net/viewthread.php?tid=161)
GCC引數詳解下面的東西可能也不是很全面但對初學者有幫助。[介紹] gcc and g++分別是gnu的c & c++編譯器 gcc/g++在執行編譯工作的時候,總共需要4步 1.預處理,生成.i的檔案[前處理器cpp] 2.將預處理後的檔案不轉換成組合語言,生成檔案.s[編譯器egcs] 3.有彙編
gcc引數錯誤導致的makefile錯誤
今天寫一個小makefile檔案,出現以下錯誤: linux:/mnt/hgfs/vmware-share # make cc -o my_bin.o my_bin.c cc -o my_bin my_bin.o my_bin.o:(.rodata+0x0): multip
makefile的和gcc引數
makefile的和gcc引數 今天建個程式工程,需求瞭解一下makefile的和gcc引數。 首先看一下我使用了makefile $cat ../rule.mk #rule.mk version= $(shell cat $(base_dir)/VERSION | pe
【C程式編譯連結】gcc使用命令介紹 gcc的使用簡介與命令列引數說明
1.gcc或者g++安裝rpm -qa|grep gcc ==>檢查gcc是否安裝gcc -v ==>檢查gcc版本 編譯器會在可執行檔案中植入一些資訊,可執行檔案會變大。一般開發時候使用 -g ,編譯一個 “release 版本” 時不使用 -g 編譯。gcc如果是最新的則不重
arm-linux-gcc 常用引數講解 gcc編譯器使用方法
我們需要編譯出執行在ARM平臺上的程式碼,所使用的交叉編譯器為 arm-linux-gcc。下面將arm-linux-gcc編譯工具的一些常用命令引數介紹給大家。 在此之前首先介紹下編譯器的工作過程,在使用GCC編譯程式時,編譯過程分為四個階段: 1. 預處理(Pre-Processing
gcc編譯引數
https://www.jianshu.com/p/223d8b6aa879 g++ test1.cpp -I/usr/local/include -L/usr/local/lib -lgtest -lpthread -o test1 -I/dir:在標頭檔案搜尋路徑列表中新增 dir
gcc常用引數初探-來自第三章3.2的筆記-P113
gcc是一種C編譯器,這次我們根據書上的程式碼嘗試著使用它。 使用之前,先補充前置知識。編譯器將原始碼轉換為可執行程式碼的流程:首先,前處理器對原始碼進行處理,將#define指定的巨集進行替換,將#include包含的檔案插入,隨後,編譯器生成原始檔對應的彙編程式碼,以.s結尾。然後彙編器會將彙編程式碼轉
gcc/g++命令引數筆記
1. gcc -E source_file.c -E,只執行到預編譯。直接輸出預編譯結果。 2. gcc -S source_file.c -S,只執行到原始碼到彙編程式碼的轉換,輸出彙編程式碼。 3. gcc -c source_file.c -c,只執行到編譯,輸出目標檔案。 4
stm32 gcc 一些引數
–std=c11 使用 c11 標準 -c 生成 .o 的 obj 檔案 -g -gdwarf-2 生成 gdb 除錯資訊 格式為 dward-2 -specs=nano.specs “連結”時使用 newlib(libc),減少大量檔案體積。
gcc命令引數
引數 選項 含義 -v 檢視gcc編譯器的版本,顯示gcc執行時的詳細過程 -o Place the output into ;指定輸出檔名為file
gcc選項引數詳解
1.gcc包含的c/c++編譯器 gcc,cc,c++,g++,gcc和cc是一樣的,c++和g++是一樣的。一般c程式就用gcc編譯,c++程式就用g++編譯。 2.gcc的基本用法 gcc test.c這樣將編譯出一個名為a.out的程式 gcc test
gcc編譯引數詳解概述
gcc 編譯器是經常使用的,可是,自己卻沒有針對它做過專門的研究,當遇到問題了,總結一下,算是對未來有個積累吧。 一 關於編譯告警: 1 -w : 關閉所有警告,不建議使用 2 -W 開啟素有gcc 能提供的警告 3 -werror : 將所有警告轉為錯誤,開啟該選項,遇到警告會終止編
GCC 編譯連結 以及相關引數
1) 預處理 gcc -E test.c -o test.i 2) 編譯為彙編程式碼(Compilation) gcc -S test.i -o test.s 3) 彙編(Assembly) 二進位制檔案 gcc -c test.s -o test.o 4) 連線(Linking) gcc te
在linux下檢視核心版本、gcc版本、作業系統多少位等引數
1. 檢視linux版本 cat/etc/issueLinaro 12.07 \n \l 2. 檢視核心版本 1)cat/proc/versionLinux version 2.6.38-13-generic([email protected]) (gcc version 4.5.2 (Ubunt
gcc g++ 編譯 wxwidgets的引數
簡單點: gcc編譯c程式,g++可編譯c和c++程式。 a.可行的命令格式 1. g++ main.cpp -o c.out $(wx-config --cflags --libs) 2. g++ $(wx-config --cflags) main.cpp -o a.
gcc提高程式效能的幾個引數
-o3 -o1 -o2 這三個引數依據數字的增加效能提高越大,但是需要注意,用該引數進行提升效能,編譯後的程式碼雖然效能提高,但是程式碼執行順序也許和最初程式碼設計的順序不一樣。 -funroll
gcc -M 引數詳解
引數詳解 -M 不是輸出預編譯過程的結果,而是輸出一個用於make的規則,該規則描述了這個原始檔的依賴關係。預編譯器輸出的這個make規則包含名字與原檔案相同的目標檔案,冒號和所有include檔
gcc 編譯器常用的命令列引數一覽
gcc是一個非常實用的Linux編譯器,在實際使用中會經常用到。 1. gcc -E source_file.c-E,只執行到預編譯。直接輸出預編譯結果。2. gcc -S source_file.c -S,只執行到原始碼到彙編程式碼的轉換,輸出彙編程式碼。3. gcc -