I came across this piece of advice on the Google's tcmalloc documentation page.
You can use TCMalloc in applications you didn't compile yourself, by using LD_PRELOAD:
$ LD_PRELOAD="/usr/lib/libtcmalloc.so"
LD_PRELOAD is tricky, and we don't necessarily recommend this mode of usage.
Why do they discourage LD_PRELOAD? Is something inherently wrong with it? Is normal linking more robust? How?