makefile編譯選項與常用變數

2021-08-01 14:56:39 字數 946 閱讀 4892

-d: 條件選擇編譯

-i : 標頭檔案搜尋路徑

-l: 連線靜態庫

-l: 連線庫的路徑

-wall: 開啟警告開關

ar: 靜態庫打包命令的名字,預設值是ar。

arflags: 靜態庫打包的選項,預設值rv

as:彙編器的名字,預設值是as。

asflags:彙編器的選項,沒有定義。

cc:c編譯器的名字,預設值是cc。

cflags:c編譯器的選項,沒有定義。

cxx:c++編譯器的名字,預設值是g++。

cxxflags:c++編譯器的選項,沒有定義。

cpp:c預處理器的名字,預設值是cc -e。

cppflags:c預處理器的選項,沒有定義。

ld:鏈結器的名字,預設值是ld。

ldflags:鏈結器的選項,沒有定義。

rm:刪除命令的名字,預設值是rm -f。

target_arch:和目標平台相關的命令列選項,沒有定義。

output_option:輸出的命令列選項,預設值是-o all。

link.c:把.c檔案鏈結在一起的命令列,預設值是$(cc) $(cflags) $(cppflags) $(ldflags)

$(target_arch)。

link.cc:把.cc檔案(c++原始檔)鏈結在一起的命令列,預設值是$(cxx) $(cxxflags) $(cppflags)

$(ldflags) $(target_arch)。

compile.c:編譯.c檔案的命令列,預設值是$(cc) $(cflags) $(cppflags) $(target_arch) -c。

compile.cc:編譯.cc檔案的命令列,預設值是$(cxx) $(cxxflags) $(cppflags) $(target_arch) -c。

makefile編譯選項

obj y 定義哪些檔案被編譯進核心,obj y中定義的.o檔案由當前目錄下的.c或.s檔案編譯生成,它們連同下級子目錄的built in.o檔案一起被合成當前目錄下的built in.o,這個built in.o檔案將被它的上一層makefile使用。例 obj y sy.o obj m 定義哪些...

Make選項及makefile常用變數

make命令可以帶幾種引數 標誌,巨集定義,描述檔名和目標檔名,標準形式為 make flags macro definitions targets 在unix下,flags包含 f file 指定file檔案為描述檔案.如果file引數為 描述檔案指向標準輸入,如果沒有 f 則系統預設當前目錄下m...

GCC常用編譯選項

gcc編譯選項解析 gcc是linux下基於命令列的c語言編譯器,其基本的使用語法如下。gcc option filename 對於編譯c 的源程式,其基本語法如下 g option filename 其中option為gcc使用時的選項,而filename為需要gcc做編譯的處理的的檔名。就gcc...