Why there are serval different versions related to GLIBC when dumping the symbols of a program by nm whereas the program is built with GLIBC_2.23?
Adhemerval Zanella
adhemerval.zanella@linaro.org
Thu Sep 3 10:47:07 GMT 2020
On 02/09/2020 21:56, 孙世龙 sunshilong wrote:
> Hi,
>
> Thank you for the clarification.
>
>> This is the initial version when the symbol was added. And it can vary
>> for different architectures (with different baseline versions).
>
> So, __printf_chk is not supported before GLIBC_2.2.4.
> Can I draw this conclusion?
I think you meant GLIBC_2.3.4 and it is version the symbol was added.
>
> But I am amazed that malloc is not supported before GLIBC_2.2.5.
> As far as I know, malloc is a very basic API.
> So I think it is supported by the very beginning version of GLIBC.
>
> If there is something wrong, please let me know.
You need to check the *base* abi version for the specific ABI. For x86_64
specifically it is GLIBC_2.2.5 while for i686 it is GLIBC_2.0.
More information about the Libc-help
mailing list