LD_PRELOAD
を設定した場合 共有オブジェクトのパスに追加すると、そのファイルは前に読み込まれます その他のライブラリ (C ランタイム、libc.so
を含む) )。 ls
を実行するには あなたの特別な malloc()
で 実装するには、次のようにします:
$ LD_PRELOAD=/path/to/my/malloc.so /bin/ls
同じシンボルでライブラリを作成し、ライブラリを LD_PRELOAD
で指定することにより、ストック ライブラリのシンボルをオーバーライドできます。 .
非標準の場所にあるライブラリを指定するために使用する人もいますが、 LD_LIBRARY_PATH
LD_PRELOAD
で ライブラリを優先することができます。
たとえば、malloc
を実装するライブラリを作成できます。 そして free
.これらを LD_PRELOAD
でロードすることで あなたの malloc
と free
標準のものではなく実行されます。