Name Date Size

..25-Oct-20244 KiB

cfi.cH A D25-Oct-202421.8 KiB

cfi.hH A D25-Oct-20241.4 KiB

dynlink.cH A D25-Oct-2024168.4 KiB

dynlink_rand.cH A D25-Oct-20246.1 KiB

dynlink_rand.hH A D25-Oct-20242.6 KiB

ld_log.cH A D25-Oct-20242.8 KiB

ld_log.hH A D25-Oct-20242.1 KiB

namespace.cH A D25-Oct-202417.7 KiB

namespace.hH A D25-Oct-20243.6 KiB

ns_config.cH A D25-Oct-202419.7 KiB

ns_config.hH A D25-Oct-20242.2 KiB

README.mdH A D25-Oct-20241.2 KiB

strops.cH A D25-Oct-20243.1 KiB

strops.hH A D25-Oct-20241.2 KiB

zip_archive.hH A D25-Oct-20243.9 KiB

README.md

1## Dynamic Linker Namespace
2
3The dynamic linker provides the namespace mechanism which is based on configures and apis. 
4
5Shared libraries can be isolated in different  namespaces so that libraries with same library name but with different symbols won't conflict. On the other hand, the namespace mechanism provides the flexibility so that some shared libraries can be exported by a linker namespace and used by another linker namespace. 
6
7
8### How does it work
9
10There are two ways to use the linker namespace: 
11
121. Modify and save the namespace configure file </etc/ld-musl-namespace-arm.ini> or </etc/ld-musl-namespace-aarch64.ini> base on architecture. When it does not exist or is filled in, a default namespace will be created.
13   
142. Use the apis of namespace in head file <dlfcn.h>, to create a namespace, to set search paths of library, or to use exported libraries of another namespace by inheriting it.
15
16### Usage example
17
18Test usages show some examples of using the linker namespace. The file <ld-musl-namespace-arm.ini> or <ld-musl-namespace-aarch64.ini> in config directory is configures for test. The file <libc-test/src/functionalext/dlns/> gives usages of how apis and configures work.
19