What is the LD_PRELOAD trick?

Hank Gay picture Hank Gay · Jan 8, 2009 · Viewed 333.2k times · Source

I came across a reference to it recently on proggit and (as of now) it is not explained.

I suspect this might be it, but I don't know for sure.

Answer

JesperE picture JesperE · Jan 8, 2009

If you set LD_PRELOAD to the path of a shared object, that file will be loaded before any other library (including the C runtime, libc.so). So to run ls with your special malloc() implementation, do this:

$ LD_PRELOAD=/path/to/my/malloc.so /bin/ls