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?

孙世龙 sunshilong sunshilong369@gmail.com
Mon Aug 17 01:46:33 GMT 2020


Hi, list

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?

Here are the dumping symbols:
nm ./test1 | grep -i glibc
                 U drand48@@GLIBC_2.2.5
                 U exit@@GLIBC_2.2.5
                 U __fprintf_chk@@GLIBC_2.3.4
                 U gettimeofday@@GLIBC_2.2.5
                 U __libc_start_main@@GLIBC_2.2.5
                 U malloc@@GLIBC_2.2.5
                 U __printf_chk@@GLIBC_2.3.4
                 U sqrt@@GLIBC_2.2.5
                 U __stack_chk_fail@@GLIBC_2.4
00000000006020c0 B stderr@@GLIBC_2.2.5

Here shows
dpkg -l libc6
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name                              Version
Architecture          Description
+++-=================================-=====================-=====================-========================================================================
ii  libc6:amd64                       2.23-0ubuntu11        amd64
           GNU C Library: Shared libraries

I would be grateful to have some help with this question.
Thank you for your attention to this matter.
Sunshilong


More information about the Libc-help mailing list