dwarf

    9熱度

    4回答

    Apples GCC在何處/如何將DWARF存儲在可執行文件中? 我通過gcc -gdwarf-2(蘋果GCC)編譯了一個二進制文件。但是,objdump -g和objdump -h都沒有顯示任何調試信息。 另外libbfd沒有找到任何調試信息。 (我在binutils郵件列表上詢問了有關它的信息here。) 但是我能夠通過dsymutil(進入dSYM)提取調試信息。然後libbfd也能夠讀取那

    1熱度

    1回答

    我已經成功使用objdump --dwarf=decodedline來找到Linux上的.so文件中每個偏移的源位置。 不幸的是在Mac OS X上。似乎.bundle文件(用作共享庫)不能以這種方式查詢。 我很樂觀,因爲gdb能夠正確調試並逐步遍歷這些包中的代碼 - 有人知道它在做什麼嗎? 進一步的信息: 的dwarfdump效用聲稱,.bundle文件不包含DWARF數據,但它確實含有STAB

    5熱度

    1回答

    讓Mac上的UUID我可以使用 dwarfdump -u path/to/compile/executable 還我能得到UUID與「二值圖像」部分 是獲得UUID沒有iOS設備上崩潰的方式簡單的碰撞 ?

    3熱度

    4回答

    可以說我有一個文件system.h中,我有以下結構 typedef struct Foo { int count; uint32 world; Temp id; } Foo; typedef struct Temp { uint64 id; } Temp; Foo bar; 現在我需要一個宏,像DUMP_STRUCT(bar),即打印欄的所有

    9熱度

    5回答

    我收到了一個沒有符號化的AirBrake.io崩潰報告。由於崩潰報告的格式與Apple crashlog不完全一樣,我不能像往常一樣將它放在XCode上,所以我採用了與我的XCode存檔完全相同的版本,試圖在命令行上對其進行符號化。結果如下: $ atos -o kidsapp.app/kidsapp 0x0002fc4c 0x0002fc4c (in kidsapp) 我非常肯定我使用的是

    1熱度

    1回答

    變量類型考慮: int x[] = {1, 2, 3}; int main(){ return 0; } 如果我們做的數據部分的objdump的,我們將得到變量x與起始地址和大小(4 * 3)個字節。有沒有簡單的方法來檢索x是一個數組和什麼類型的信息? 我知道我們可以使用dwarfdump -i a.out來做到這一點,然後解析結果來達到相同的效果,但是有什麼更容易做到的。我只

    0熱度

    1回答

    我需要在.out文件中獲取變量的地址和成員名稱。我基本上使用gcc在linux中編譯了一個c程序,我希望看到該文件的信息。在linux上有很多例子,但我需要在Windows上完成。 編輯 我安裝了Cygwin,由於某種原因objdump的不工作:

    0熱度

    1回答

    This question在解釋如何獲取elf文件的符號(變量,函數等)方面做得很好。 現在我有符號,我想知道他們在什麼位置(模塊)。 例如,如果我編譯的程序由文件main.c,someFile.h和someFile.c組成。另外我們假設main.c程序包含全局變量int Counter。那麼我怎麼能告訴變量計數器位於main.c?

    5熱度

    1回答

    我試圖編譯NVCC複雜的應用程序,並且需要從MPIC改變編譯++到g ++,自認爲我有這個錯誤: /usr/bin/ld: Dwarf Error: found dwarf version '3', this reader only handles version 2 information. 什麼是矮人?這個錯誤意味着什麼? 任何提示解決它?我在這裏錯過了什麼有用的信息?

    1熱度

    1回答

    我需要一種直接使用它們的偏移量訪問DIE的方法。到目前爲止,我發現有一種計算單元(CU)對象的方法,您可以從其偏移量訪問DIE。 I.e. : cu._get_DIE(die.attributes['DW_AT_type'].value) 但是,如果您嘗試訪問的模具,它是當前CU之外,你是出界的,因爲死了,是不是CU下索引。 我能想到的最好的方法是完成CU的循環,並使用偏移量作爲索引創建DIE