version `GLIBC_2.14' not found 解决方法

在服务器上编译的a.exe文件放到本机运行出现version `GLIBC_2.14' not found

排查:

objdump -p a.exe | grep GLIBC_

可以看到是GLIBC_2.14

objdump -T a.exe  | grep GLIBC_2.14

nm a.exe | grep GLIBC_2.14

可以看到是memcpy用到了GLIBC_2.14

gcc --print-file-name=libc.so

 

strings /lib64/libc.so.6  | grep memcpy

可以看到memcpy最低版本是GLIBC_2.2.5

解决方法:

  方法1. 本机升级安装libc2.14

 方法 2:  C代码中加入__asm__(".symver memcpy,memcpy@GLIBC_2.2.5");

你可能感兴趣的:(ubuntu)