【方輝專欄】ARM嵌入式編譯器(三) Arm Compiler 6編譯參數(shù)選項(xiàng)
2022-08-08
摘要: 本文主要對(duì)Arm Compiler 6編譯器的各命令參數(shù)選項(xiàng)進(jìn)行介紹。關(guān)鍵字:Arm Compiler 6、編譯器、armclang、armlink、armar 、fromelf、armasm1. armclang常用參數(shù) 參數(shù)選項(xiàng)參數(shù)說明-c只執(zhí)行編譯步驟,不執(zhí)行鏈接步驟-x指定編譯的原文件語言,例如C語言,-xc inputfile.s ;例如C++語言,-xc++ inputfile.s-std指定要編譯的語言標(biāo)準(zhǔn),例如C90, -std=c90--target=arch-vendor-os-abi選定執(zhí)行狀態(tài)是AArch64或AArch32.例如AArch64,--target=aarch64-arm-none-eabi例如AArch32,--target=arm-arm-none-eabi-march=name指定體系結(jié)構(gòu),例如:-march=armv8-a 或 -march=armv7-a.-march=list顯示所選執(zhí)行狀態(tài)的所有受支持架構(gòu)的列表。-mcpu=name指定的處理器。例如:-mcpu=cortex-m3 或-mcpu=cortex-a53-mcpu=list顯示所選執(zhí)行狀態(tài)的所有受支持處理器的列表。-marm以 A32 指令集進(jìn)行編譯,例如:--target=arm-arm-none-eabi -march=armv7-a -marm;說明:-marm選項(xiàng)對(duì) M架構(gòu)或 AArch64 架構(gòu)無效。-mthumb以 T32 指令集進(jìn)行編譯,,該指令集由 16 位寬和 32 位寬指令組成。例如:--target=arm-arm-none-eabi -march=armv8-a -mthumb說明:-marm選項(xiàng)對(duì) AArch64 架構(gòu)無效-mfloat-abi指定使用硬件還是軟件函數(shù)進(jìn)行浮點(diǎn)運(yùn)算。-mfpu指定 FPU 架構(gòu)-g(armclang)生成與 DWARF 4 標(biāo)準(zhǔn)兼容的 DWARF 調(diào)試表-e僅執(zhí)行預(yù)處理器步驟-I將指定目錄添加到搜索位置列表,用以查找包含文件。-o(armclang)指定輸出文件的名稱。-Onum指定編譯源文件時(shí)要使用的性能優(yōu)化級(jí)別。num為0,1,2,3.-Os指定優(yōu)化等級(jí)為平衡代碼大小與代碼速度-Oz指定優(yōu)化等級(jí)為優(yōu)化代碼大小。-S輸出機(jī)器代碼的反匯編。-###用于調(diào)用編譯器和鏈接器,顯示診斷輸出,不執(zhí)行編譯和鏈接步驟。2. armlink常用參數(shù)參數(shù)選項(xiàng)參數(shù)說明--scatter=filename指定分散加載描述文件,創(chuàng)建鏡像的內(nèi)存映射。--entry指定鏡像的初始入口。--info (armlink)顯示有關(guān)鏈接器操作的信息。例如代碼大小,--info=size--list=filename將診斷輸出重定向到指定文件--map顯示一個(gè)內(nèi)存映射,包含鏡像中每個(gè)加載區(qū)、執(zhí)行區(qū)和輸入段的地址和大小,也包括鏈接器生成的輸入段。--symbols列出鏈接步驟中使用的每個(gè)局部和全局符號(hào)及其值-o filename, -output=filename指定輸出文件的名稱--keep=section_id指定不刪除輸入段未使用的部分--load_addr_map_info在映射文件中包括執(zhí)行區(qū)的加載地址和其中的輸入段3. armar常用參數(shù)參數(shù)選項(xiàng)參數(shù)說明--debug_symbols在庫中包含調(diào)試符號(hào)-a pos_name將新文件放在庫中,pos_name文件之后的位置。-b pos_name將新文件放在庫中,pos_name文件之前的位置。-a file_list從庫中刪除指定的文件--sizes列出庫中每個(gè)成員Code, RO Data, RW Data, ZI Data和 Debug 的大小-t打印庫的目錄4. fromelf常用參數(shù)參數(shù)選項(xiàng)參數(shù)說明--elf選擇 ELF 輸出模式--text以文本格式顯示鏡像信息--info (fromelf)顯示有關(guān)特定主題的信息例如:--info=totals Code RO Data RW Data I Data Debug5. armasm常用參數(shù)參數(shù)選項(xiàng)參數(shù)說明--cpu=name設(shè)置處理器-g (armasm)生成與 DWARF 3 標(biāo)準(zhǔn)兼容的 DWARF 調(diào)試表--fpu=name設(shè)置目標(biāo)浮點(diǎn)單元 (FPU) 架構(gòu)-o (armasm)指定輸出文件的名稱+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++關(guān)于億道電子億道電子技術(shù)有限公司(英文名稱:Emdoor Electronics Technology Co.,Ltd)是國內(nèi)資深的研發(fā)工具軟件提供商,公司成立于 2002 年,面向中國廣大的制造業(yè)客戶提供研發(fā)、設(shè)計(jì)、管理過程中使用的各種軟件開發(fā)工具,致力于幫助客戶提高研發(fā)管理效率、縮短產(chǎn)品設(shè)計(jì)周期,提升產(chǎn)品可靠性。20 年來,先后與 Altium、ARM、Ansys、QT、Adobe、Visu-IT、Minitab、Testplant、EPLAN、HighTec、GreenHills、PLS、Ashling、MSC Software 、Autodesk、Source Insight、TeamEDA、MicroFocus等多家全球知名公司建立戰(zhàn)略合作伙伴關(guān)系,并作為他們在中國區(qū)的主要分銷合作伙伴服務(wù)了數(shù)千家中國本土客戶,為客戶提供從芯片級(jí)開發(fā)工具、EDA 設(shè)計(jì)工具、軟件編譯以及測試工具、結(jié)構(gòu)設(shè)計(jì)工具、仿真工具、電氣設(shè)計(jì)工具、以及嵌入式 GUI 工具等等。億道電子憑借多年的經(jīng)驗(yàn)積累,真正的幫助客戶實(shí)現(xiàn)了讓研發(fā)更簡單、更可靠、更高效的目標(biāo)。歡迎關(guān)注“億道電子”公眾號(hào)了解更多研發(fā)工具軟件知識(shí)
查看更多→