What is the LD

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.


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

You can override symbols in the stock libraries by creating a library with the same symbols and specifying the library in LD_PRELOAD .

Some people use it to specify libraries in nonstandard locations, but LD_LIBRARY_PATH is better for that purpose.


With LD_PRELOAD you can give libraries precedence.

For example you can write a library which implement malloc and free . And by loading these with LD_PRELOAD your malloc and free will be executed rather than the standard ones.

链接地址: http://www.djcxy.com/p/73582.html

上一篇: 是sizeof(枚举)== sizeof(int),总是?

下一篇: 什么是LD