簡體   English   中英

確定編譯的 ELF 對象是 32 位還是 64 位

[英]Determine if a compiled ELF object is 32-bit or 64-bit

我想驗證一個對象是用 32 位還是 64 位編譯的:

% readelf -h my_obj
ELF Header:
  Magic:   7f 45 4c 46 01 02 01 00 00 00 00 00 00 00 00 00 
  Class:                             ELF32
  Data:                              2's complement, big endian
  Version:                           1 (current)
  OS/ABI:                            UNIX - System V
  ABI Version:                       0
  Type:                              EXEC (Executable file)
  ...

既然顯示的是ELF32,這能保證對象是32位模式嗎?

胖二進制文件對於 ELF 來說並不常見或標准,因此該類確實可以可靠地指示 32 位和 64 位。 但是要弄清楚您是在查看 32 位 x86、ARM、MIPS 還是其他任何東西,您還必須檢查 Type 字段正下方的 Machine 字段。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM