我不知道我做錯了什麼,但我似乎無法解決這個問題。爲什麼ValGrind無法找到我的符號?
據file
,
test: ELF 32-bit LSB executable, Intel 80386, version 1 (GNU/Linux), statically linked, for GNU/Linux 2.6.16, BuildID[sha1]=0x436d17ab04dc54f35f1a8e6a16d4f87aaf79a0e9, not stripped
上面清清楚楚地寫着 「不剝奪」。然而,當我跑Valgrind的,
--27709-- Reading syms from /root/ValGrind/test (0x8048000)
--27709-- object doesn't have a dynamic symbol table
我想不通爲什麼的對象不具有符號表......我在做什麼錯?
編輯:是因爲二進制文件是32位的,而且我運行的是64位操作系統?或者應該不重要?
二進制_is_靜態鏈接。我想這是我的問題? – MathematicalOrchid
當運行Valgrind時,靜態鏈接至少會給你提供不完整的結果,所以是的,這就是_a_問題。根據文檔,你可以使用選項「--soname-synonyms區= somalloc = NONE」作爲解決方法(雖然我沒有嘗試過,但實際工作)。 – oliver