在服务器上编译的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");