gcc工具鏈nm符號工具簡介

2021-09-09 08:46:21 字數 621 閱讀 5376

[root@centos]$ nm -n /home/abc.exe > nm.txt

// -n 按位址順序排序,匯出

//cat 符號表

00000000049908a0 b g_getuserinfo

0000000004990947 b gsnum

0000000004990948 b gsft2

0000000004990949 b gsft1

0000000004990950 b glimit

0000000004990970 b gsig20

00000000049909a0 b tnode

//位址 - b (bss段 - 初始化為0的全域性變數) - 變數名稱

nm命令被用於顯示二進位制目標檔案的符號表。

nm(選項)(引數)
-a:每個符號前顯示檔名;

-d:顯示動態符號;

-g:僅顯示外部符號;

-r:反序顯示符號表。

目標檔案:二進位制目標檔案,通常是庫檔案和可執行檔案。

二進位制工具:nm_列出目標檔案中的符號表]

GCC編譯工具鏈

編譯過程控制 e 預處理,會呼叫cpp預處理器,但不生成檔案。gcc e main.c o main.i c 預處理時,不刪除注釋資訊 s 生成彙編檔案,gcc合併預編譯和編譯,呼叫ccl程式完成 c 將原始檔編譯成目標檔案,但是不鏈結,呼叫彙編器as o 輸出目標名稱,gcc預設編譯出來的檔案是a...

gcc 引數 gcc編譯工具簡介

編譯的過程是乙個語言轉換的過程,由人能看懂的程式語言轉換為機器能看懂的二進位制語言。yaos的開發過程中,我們選擇gcc作為這個轉換器。我使用的系統是macos ak 2 yaos akilis uname adarwin ak 2.local 19.3.0 darwin kernel versio...

ubuntu下 gcc工具鏈的安裝

ubuntu14.04中,一般將自定義的軟體安裝在 usr local 目錄下 arm s5pv210的工具鏈為arm linux 2009q3。版本號為 提取碼 e8l9 cd usr local mkdir arm tar xvf arm 2009q3.tar.bgz cd arm arm 20...