linker在設(shè)計(jì)之初就為廣大碼農(nóng)提供了便利
// Get a few environment variables.
const char* LD_DEBUG = getenv("LD_DEBUG");
if (LD_DEBUG != nullptr) {
g_ld_debug_verbosity = atoi(LD_DEBUG);
}
因此可以在進(jìn)程內(nèi)部設(shè)置環(huán)境變量
setenv("LD_DEBUG", "2", 1);
庫(kù)加載相關(guān)的log開關(guān)
// For logging, check the flag applied to all processes first.
static CachedProperty debug_ld_all("debug.ld.all");
flags_ |= ParseProperty(debug_ld_all.Get());
可以設(shè)置
adb shell setprop debug.ld.all dlerror,dlopen
不需要root就可以設(shè)置