C .文本部分位置独立可执行文件的地址范围

C .文本部分位置独立可执行文件的地址范围,c,linux,elf,C,Linux,Elf,我想要独立于位置的可执行文件的.text部分的地址。使用readelf-S: Name Type Address Offset Size EntSize Flags Link Info Align .text PROGBITS 0000000000002700 00002700 000000000000167

我想要独立于位置的可执行文件的.text部分的地址。使用
readelf-S

Name              Type             Address           Offset
       Size              EntSize          Flags  Link  Info  Align
.text             PROGBITS         0000000000002700  00002700
       0000000000001672  0000000000000000  AX       0     0     16
我了解到,它将从超出库加载到内存的位置0x2700字节开始。但是我怎样才能得到可执行文件的加载地址呢? 在运行时(从正在运行的程序)是否有其他方法获取.text节地址范围

在运行时(从正在运行的程序)是否有其他方法获取.text节地址范围


是:您需要在运行时使用并使用
info->dlpi\u addr
在内存中定位
PIE
二进制文件。第一次调用
回调
将针对主可执行文件。

问题出在哪里?我发现并提出了一种适用于非位置独立可执行文件的方法。不幸的是,在我的案例中,它只给出了部分结果。我还需要做什么?