Lines Matching refs:library
25 * At the affected API level and above, we’ll refuse to load the library.
27 * Warnings about any behavior change that will affect a library if you
28 increase your target API level will appear in logcat when that library
36 ## Changes to library dependency resolution
39 JB-MR2, Android didn't include the application library directory
42 dependencies before loading their main library. Worse, until it was
53 simply link all of your code into one big library and sidestep the details of
54 library and symbol lookup changes on all past (and future) Android versions.
56 ## Changes to library search order
58 We have made various fixes to library search order when resolving symbols.
64 LD_PRELOAD libraries, the library itself, and its DT_NEEDED libraries
65 in that order. For API 23 and later, for any given library, the dynamic
68 executable, LD_PRELOAD libraries, and any library with the DF_1_GLOBAL
70 the breadth-first transitive closure of the library and its DT_NEEDED
80 `libfoo.so` instead, letting the dynamic linker find the correct library
105 between a library’s soname and its path (public bug
108 releases would assume that the basename of the library was the soname,
125 compatibility. For example, if a library author knowingly changes
127 library so that old code gets the old version and new code gets the new
144 Note that in API level 23 and above dlopen(3) will open a library from
146 "my_zip_file.zip!/libs/libstuff.so". As with APKs, the library must be
186 0x00000001 (NEEDED) Shared library: [libnativehelper.so]
187 0x00000001 (NEEDED) Shared library: [libutils.so]
188 0x00000001 (NEEDED) Shared library: [libstagefright_foundation.so]
189 0x00000001 (NEEDED) Shared library: [libmedia_jni.so]
190 0x00000001 (NEEDED) Shared library: [liblog.so]
191 0x00000001 (NEEDED) Shared library: [libdl.so]
192 0x00000001 (NEEDED) Shared library: [libz.so]
193 0x00000001 (NEEDED) Shared library: [libstdc++.so]
194 0x00000001 (NEEDED) Shared library: [libm.so]
195 0x00000001 (NEEDED) Shared library: [libc.so]
287 While library dependencies (DT_NEEDED entries in the ELF headers) can be
289 no control over where your library will be installed by the system. A
290 DT_NEEDED entry should be the same as the needed library's SONAME,
291 leaving the business of finding the library at runtime to the dynamic
297 the DT_NEEDED exactly and so it won't be able to load the library if
306 0x00000001 (NEEDED) Shared library: [libm.so]
307 0x00000001 (NEEDED) Shared library: [libc.so]
308 0x00000001 (NEEDED) Shared library: [libdl.so]
309 0x00000001 (NEEDED) Shared library:
315 library using the path specified, and that path won't exist on the
326 Each ELF shared object (“native library”) must have a SONAME (Shared
330 to runtime issues such as the wrong library being loaded: the filename
338 *Potential problems*: namespace conflicts may lead to the wrong library
340 are not found, or you try to use an ABI-incompatible library that isn't
341 the library you were expecting.
401 ## Enable logging of dlopen/dlsym and library loading errors for apps (Available in Android O)
429 Android allows `dlclose` to unload a library even if there are still
436 Not calling `dlclose` or ensuring that your library has `RTLD_NODELETE`
437 set (so that calls to `dlclose` don't actually unload the library)
453 uses the C library, this decision is made long before we know what API
454 level an app targets, so all code sees the new IFUNC-using C library.
456 detect hooking of C library functions might need to fix their code to cope