koute / bytehound

A memory profiler for Linux.
Other
4.49k stars 193 forks source link

LD_PRELOAD undefined symbol: memfd_create #96

Open kp-tux opened 1 year ago

kp-tux commented 1 year ago

Hi, great project! I successfully compiled the project, but when executing this statement:

LD_PRELOAD=./libbytehound.so ./bytehound serverv

i got: ./bytehound: symbol lookup error: ./libbytehound.so: undefined symbol: memfd_create

and every program is like this Did I do something wrong?

Information about env: In docker container (uname -r = 5.10.104-linuxkit) already install gcc g++

koute commented 1 year ago

What's your libc version?

ig0rsky commented 1 year ago

@koute: Same issue with libc 2.26

koute commented 1 year ago

Currently at least libc 2.27 is required. (Which by itself is almost half a decade old, is the libc in the oldest still publicly supported Ubuntu version, and is older than the libc in Debian's oldstable.)

quwenzhe commented 1 year ago

➜ ldd --version ldd (GNU libc) 2.27

➜ LD_PRELOAD=./libbytehound.so ./my_service ./cloud-proxy: symbol lookup error: ./libbytehound.so: undefined symbol: memfd_create

I have update libc to 2.2.7, but the issue is happen.