我将环境变量 LD_PRELOAD 设置为我创建的共享库文件,为了让 LD_PRELOAD 指向我创建的共享库文件,我需要给出如下的完整路径:
export LD_PRELOAD=full/path/to/file.so
但是如果我将 LD_PRELOAD 指向 下的共享库/usr/lib/
,我不需要给出完整路径,我没有 root 权限,所以我无法将我的共享库文件放入/usr/lib/
,在这种情况下,我该如何设置环境变量 LD_PRELOAD 使用非完整路径,如下所示:
export LD_PRELOAD=file.so
答案1
变量中列出的名称LD_PRELOAD
在 中查找$LD_LIBRARY_PATH
,就像可执行文件本身中提到的库名称一样。所以如果你想预加载/full/path/to/file.so
,你可以使用
export LD_LIBRARY_PATH=/full/path/to
export LD_PRELOAD=file.so