Solaris | ||
---|---|---|
Version | [2.8] | |
1 | compiler flag (position independent code) | -KPIC, -Kpic |
2a | shared library creation flag | -G |
2b | shared library creation (C++) | CC -G -o |
2c | static archiver (C++) | CC -xar -o |
3a | library name | -h name |
3b | file extension | .so |
4 | executable link options | -Bdynamic -Lpath -lname |
5a | runtime path specification | -R <pathlist> |
5b | Does not build the path for shared libraries into the executable | -norunpath |
6 | controlling symbols | -z defs/ nodefs/ muldefs |
Solaris | ||
7 | exports file/link option (see notes) |
using a script file (see "man ld") |
8 | hiding symbols | using a script file (see "man ld") (see this article) |
9 | runtime library path | LD_LIBRARY_PATH LD_LIBRARY_PATH_64 |
10 | symbol binding | -Bsymbolic |
11 | runtime debugging | (c.f. man ld.so.1) LD_BIND_NOW LD_DEBUG ld -D help |
12 | runtime preload | LD_PRELOAD |
13 | loader | ld.so |
14 | runtime performance | xxxx |
Solaris | ||
15 | versioning | using a script file (see "man ld") -M mapfile |
16 | entry points | xxxx |
17 | dynamic loading / dynamic symbol access |
dlopen / dlsym |
18 | utilities | ldd, elfdump, pvs, dumpstabs (compilers V.6), crle (Solaris>=8) |
19 | documentation | man: ld, ld.so.1, ldd, pvs |
Solaris |