0

My glibc version is 2.32-5, but when I "objdump" memcpy implementation, it shows:

00000000000a9280 <memcpy@GLIBC_2.2.5>:
   fe9ba:       48 8d 05 bf a8 fa ff    lea    -0x55741(%rip),%rax        # a9280 <memcpy@GLIBC_2.2.5>
   ffc71:       48 8d 05 08 96 fa ff    lea    -0x569f8(%rip),%rax        # a9280 <memcpy@GLIBC_2.2.5>

What's 2.2.5 here?

Rachid K.
  • 4,490
  • 3
  • 11
  • 30
Chen Li
  • 4,824
  • 3
  • 28
  • 55
  • 1
    Same question with an unaccepted answer: https://stackoverflow.com/questions/23416442/what-does-the-glibc-2-2-5-suffix-on-symbols-do – Paul Hankin Nov 19 '20 at 11:23
  • @PaulHankin Not the same question. That question asks what the meaning is of the suffix, this question asks why the version mismatch occurs. – orlp Nov 19 '20 at 11:24
  • 1
    @orlp There's more than a little overlap, since this question also literally asks "what's the meaning of 2.2.5 in memcpy@GLIBC_2.2.5". – Paul Hankin Nov 19 '20 at 11:38
  • Since you seem to be looking at an x86_64 build of glibc, you will probably find that it also has ``. The `@@` indicates that is the default implementation of `memcpy`. The `` is an older implementation kept for compatibility with executables linked against older versions of the library. – Ian Abbott Nov 19 '20 at 12:11

0 Answers0