linux的可執行檔案中的幾個待解決的問題

2022-03-06 06:33:04 字數 682 閱讀 1164

1、動態鏈結庫的原理?也就是他是怎麼開始執行的

這個問題基本解決,

動態鏈結庫的本質就是寫好的一些函式,給你呼叫,但是你看不到函式的實現,卻能呼叫它,這就是載入器的魅力

2、怎麼生成.so格式的動態鏈結庫

這個總結挺好的:(在《linux系統中動態鏈結庫的建立與使用》一文中看到)一是如何讓動態鏈結庫為linux系統所共享,二是編譯連線程式時如何做.讓動態鏈結庫為系統所共享,主要是用ldconfig管理命令,維護好系統共享庫的快取檔案/etc/ld.so.cache.編譯連線時如何做?注意連線上所用的動態鏈結庫就可以了

《linux系統中動態鏈結庫的建立與使用》原創位址,找的我好辛苦啊親

1、2、

使用方法這裡也講的比較清晰:

3、乙個可執行程式執行的時候需要有哪些動態鏈結庫

檢視,readelf -a test   (test為可執行檔案),可檢視相當多的資訊

4、檢視可執行檔案的相關資訊 

ldd 《可執行檔名》       檢視可執行檔案鏈結了哪些  系統動態鏈結庫

nm 《可執行檔名》       檢視可執行檔案裡面有哪些符號

strip 《可執行檔名》      去除符號表可以給可執行檔案**

如果我們想從可執行程式裡面提取出來一點什麼文字資訊的話,還可以用strings命令

strings 《可執行檔名》

Linux的可執行檔案

linux的可執行檔案 用ls f命令,後買帶 的就是可執行檔案。linux下,當你使用.執行乙個程式時,首先是shell來接管你的輸入,然後用fork派生子程序,最後用execv系列將你的那個程式的 交給核心 1。檢查你執行的檔案的屬性,其屬性在它的i節點中描述,如果你的那個檔案不是可執行的屬性,...

linux 執行可執行檔案

1 首先,需要了解一下a.out這個目標檔案。a.out在linux下是elf executable linkable format 檔案格式,該目標檔案由乙個檔案頭 段 資料段 已初始化 從定位資訊區 符號表及符號名字字串構成,如下左圖所示,經過鏈結後生成執行檔案如下右圖所示,需要說明的是1 bs...

Linux下執行可執行檔案

我們通常會為計算機配置環境變數 path,echo path 檢視當前的環境變數包含的目錄。這些目錄下的可執行檔案就無需輸入完整路徑來執行,直接輸入命令就行,我們shell中常使用的一些linux命令,例如man,cat等的目錄都被包含在該path目錄中,所以直接在shell中輸入這些命令就可以。即...