如何检查程序是否在C中静态编译

时间:2018-12-12 01:39:50

标签: c linux static elf

如何在不使用system()stat()或任何其他shell execution commands的情况下检查是否已静态编译了另一个程序

1 个答案:

答案 0 :(得分:3)

假定为ELF,则解析Ehdr以查找程序标头(Phdrs),然后查找类型PT_INTERP之一。如果不存在该程序头,则该程序是静态链接的。相关数据结构可以在elf.h中找到。