In computing, a dynamic linking is the process of an operating system (OS) that loads (copies from persistent storage to RAM) and links (fills jump tables and relocates pointers) the shared libraries needed by an executable at run time, that is, when it is executed.

learn more… | top users | synonyms (1)

11
votes
1answer
4k views

Installing two glibc alongside in debian/ubuntu

Is it possible to install and use two different glibc versions on the same machine. Where one version is only used to run legacy software, which relies on old glibc binaries? Is it possible to do ...
6
votes
3answers
8k views

Where do executables look for shared objects at runtime

The title is pretty explicit. I understand how to define include shared objects at linking/compile time. However I still wonder how do executables look for the shared object (*.so libraries) at ...
6
votes
1answer
2k views

Linux, GNU GCC, ld, version scripts and the ELF binary format — How does it work?

I'm trying to learn more about library versioning in Linux and how to put it all to work. Here's the context: -- I have two versions of a dynamic library which expose the same set of interfaces, say ...
1
vote
2answers
288 views

ld.so.preload doesn't differ x86_32 and x86_64

— It's known you can run x86_32 programms with x86_64 kernel if it was compiled with support for that. But dynamic linker doesn't provide any way to define a separate set of preload libraries for ...
8
votes
5answers
27k views

Problem to launch java at Debian: “error while loading shared libraries: libjli.so”

I'm trying to launch java: $ java -version java: error while loading shared libraries: libjli.so: cannot open shared object file: No such file or directory $ ldd ...
3
votes
2answers
1k views

Confusion about linking boost library while compilation

For a client I needed to add boost 1.54 to the system. So I downloaded the latest version (1.55) and built it within a special directory: /usr/local/lib/boost1.55/. This works. Then I had to adapt the ...
1
vote
1answer
3k views

libcurl.so.4 undefined reference error

Even after installation of curl and all concerned libcurl packages such as curl libcurl3 libcurl3-gnutls libcurl4-doc libcurl4-nss-dev libcurl-ocaml libcurl3-dbg libcurl3-nss libcurl4-gnutls-dev ...
0
votes
3answers
656 views

Finding the absolute path of shared libraries used by an executable

Considering lshw as a sample program, here is what ldd gives: $ ldd /usr/sbin/lshw linux-vdso.so.1 => (0x00007fff8bdaf000) libresolv.so.2 => /lib64/libresolv.so.2 (0x000000360e400000) ...