首页 > TAG信息列表 > ld-preload

linux-为运行命令设置LD_PRELOAD环境变量而无需键入完整路径

我正在玩LD_PRELOAD,并产生了一个库,该库只是将puts()包装在一个函数中,该函数在打印之前将要打印的字符串转换为大写.然后,我将LD_PRELOAD变量导出为 $export LD_PRELOAD=/home/adrian/test/myputs.so 现在,运行命令时行为可以按预期工作 $/bin/pwd /HOME/ADRIAN/TEST 但是这

linux-如何使静态链接的ELF文件加载LD_PRELOAD .so

我有静态链接的二进制文件(ELF文件),它没有动态段,.dymsym节,并且不执行LD_PRELOAD命令等. 我如何创建假的虚拟动态段来激活动态加载程序并执行LD_PRELOAD命令?解决方法: How could i create fake dummy dynamic segment to activate dynamic loader and perform LD_PRELOAD comman

Android 4.2 – 支持LD_PRELOAD吗?

我想知道现在更新的Android版本是否支持LD_PRELOAD? 在4.0 ICS时它不是,并且在文档(NDK docs / SYSTEM-ISSUES.html)中仍然存在: No support for LD_LIBRARY_PATH, LD_PRELOAD, RTLD_LOCAL and many other options. 但是几天前我在我的Android 4.2 Galaxy Nexus上使用了LD_LIBRARY_

LD_PRELOAD和clone()

我正在使用一个脚本运行一个带有LD_PRELOAD的程序和一个由我创建的库拦截一些调用,它运行良好但是在某些时候进程调用clone()并且我失去了拦截下一步的能力(程序运行)再没有我的图书馆),有什么方法可以克服这个问题吗? 打电话是 clone(child_stack, CLONE_VM | CLONE_FS | CLONE

在Linux中使用LD_PRELOAD混合64位/ 32位环境

我想设置LD_PRELOAD指向一个共享库,我可以运行64位或32位应用程序.很明显,共享库和可执行文件必须匹配bit-ness. $LD_PRELOAD=/lib64/lib_init.so ./hello32 ERROR: ld.so: object '/lib64/lib_init.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): igno

linux – 如何转义附加到LD_PRELOAD的库路径中的空格?

我在Linux上遇到LD_PRELOAD问题.我正在尝试在启动我的应用程序之前加载存在于名称中包含空格的目录中的库: > export LD_PRELOAD='/home/myuser/MyApp\ Test/lib/mylib.so' 但是,路径没有正确使用.它会在空间存在的地方被拆分,因此它会尝试预加载这些: ERROR: ...: object '/home/

LD_PRELOAD不会影响带有RTLD_NOW的dlopen()

如果我直接使用共享库中的函数,即在我的代码中声明它并在编译期间链接,LD_PRELOAD工作正常.但是如果我使用dlopen()/ dlsym()代替LD_PRELOAD没有效果! 问题是我想调试一个使用dlopen()加载一些插件的程序,并且它使用绝对文件名,所以简单地使用LD_LIBRARY_PATH将不起作用. 这是一个说