我不知道LD_PRELOAD现在是否支持更新的Android版本?Android 4.2 - 是否支持LD_PRELOAD?
在4.0 ICS的时候不是,并在文档中(NDK文档/ SYSTEM-ISSUES.html)仍然有:
No support for LD_LIBRARY_PATH, LD_PRELOAD, RTLD_LOCAL and many other options.
但是前几天我用我的Android LD_LIBRARY_PATH 4.2 Galaxy Nexus和它的工作(!)。
在此先感谢!
我记得让那些工作之一,但人们不禁要问,你打算用它做什么 - 正常的Android操作过程中,执行exec()是不是真的使用,所以有这样的背景没有太多机会产生效果。如果您想明确知道,请检查源代码,在链接器二进制文件上运行字符串,或者测试它。 –
我从来没有使用LD_PRELOAD,但它不知道我是否可以在android中做这样的事情:http://www.linuxjournal.com/article/7795 –
但是用它做什么?如果您正在处理正确的Android代码,那么您将会将jni库加载到现有的进程中,在这种情况下,您可以首先使用替换函数加载库 - 但要注意,大多数系统库都是预加载的在你写的第一行代码运行之前。链接器预加载变量实际应用的情况是,如果您实际执行二进制文件 - 在unix传统中操作比android更多。 –