objdump

    3熱度

    1回答

    我有一個共享的obj文件說a.so,並且我想了解一個特定的函數(比如fname)是否內聯。我嘗試了以下4種方法並獲得了不同的答案: 1) nm a.so | grep fname - >這並不表示任何o/p表示函數是內聯的。 請讓我知道這是否足夠檢查一個函數是否內聯。 2) objdump -d a.so | grep fname - >這沒有給出任何o/p意味着函數被內聯。如果我在這裏得

    46熱度

    4回答

    我已經在我的系統上安裝了一個二進制文件,並希望查看給定函數的反彙編。最好使用objdump,但其他解決方案也是可以接受的。 From this questions我知道如果我只知道邊界地址,我可能會反彙編部分代碼。從this answer我學會了如何將我的拆分調試符號恢復爲單個文件。但即使在單個文件上運行,甚至拆卸所有代碼(即沒有開始或停止地址,但參數爲objdump),我仍然沒有在任何地方看到該

    0熱度

    2回答

    我們的系統有一個開源庫。棘手的是我們有兩個庫,一個是我們自己的修改,另一個是原始的。這兩個副本都在源代碼樹中,但是應該在運行時調用自定義的副本,而將原始的副本用於構建時用於其他目的。 現在我懷疑,在我們的系統升級過程中,定製的一個隱藏了原來的隱藏。由於系統的複雜性,修改源代碼以進行一些跟蹤是可行的,但是很尷尬。我認爲如果我只是objdump頂級圖書館得到線索。 以下是詳細信息: 1) The cu

    4熱度

    1回答

    所以基本上我有一些在Linux 32位上編譯的ELF二進制文件。 我想在我的Mac 64位上分析它。 我正在嘗試使用自制程序安裝的gnu utils,如gobjdump和greadelf。 然而,當我試圖解析器採用了gobjdump精靈二進制文件,我得到這個錯誤: gobjdump: hello: File format is ambiguous gobjdump: Matching forma

    2熱度

    1回答

    我有一個ARM二進制文件,我需要準確地找到它的函數的序言結尾和結尾開始的地址。換句話說,我需要職能機構的界限。舉例來說,如果我有,其裝配的功能是一樣的東西: 0x00000320 <+0>: push {r7, lr} 0x00000322 <+2>: sub sp, #16 0x00000324 <+4>: add r7, sp, #0 0x00000326 <+6>: str r0, [

    1熱度

    2回答

    有沒有辦法在不實際運行代碼的情況下獲取特定類的所有成員變量的大小? (即沒有sizeof(),offset_of()操作) 是否objdump或otool有一些選項可以從中間目標文件(甚至是最終的ELF文件)中提取此信息? 編輯: 「我現在想幹什麼?」: 我兩者之間建立注意到我們的軟件是一個特定的類實例的大小激增的。這個類非常大,有很多很多成員變量。有問題的類在兩個構建之間沒有改變,但是它的成員變

    2熱度

    1回答

    我有一個包含ARM v8二進制代碼的文件。我想反彙編這個文件,並得到它包含的實際彙編代碼。 假設文件名是tmp.o我運行: /opt/linaro/A64-tools/bin/aarch64-linux-gnu-objdump -b binary -m AARCH64 -D tmp.o 這給了我正確的拆卸。但是,分支指令的偏移量假定此代碼位於地址0x00000000中。 如果我知道這些代碼將坐

    1熱度

    2回答

    我們在計算機建築學教授給我們,詢問密碼的示例程序。任務是在比較輸入的密碼並決定是否正確後更改跳轉操作碼。 我寫了一個程序,它可以在給定的二進制文件的特定位置更改任何字節。 這裏的pasword程序的代碼: int main(int argc, char* argv[]){ char *pw = "12441233"; char pass[32]; printf("E

    2熱度

    1回答

    我跟着http://tinyhack.com/2014/03/12/implementing-a-web-server-in-a-single-printf-call/寫一個只有printf()調用的web服務器。 我遵循文章的指導。 Howerver,我發現我的程序的可執行文件在objdump的幫助下不包含.fini_array部分。 注意到.fini_array是由Linux Standard

    2熱度

    1回答

    給出一個動態鏈接的ELF二進制文件,比如說/bin/less。 二進制內部,存在要由共享庫提供的函數的調用,例如strcpy() 如何可以找出從共享庫/共享對象獲得strcp功能? 換句話說,我想獲得func_name/shared_obj_name.so對。 接聽this post,邁克爾·斯萊德說: ELF文件沒有指定哪些符號來自哪個庫;它 只是添加一個共享庫列表鏈接到ELF二進制文件,並允許