You installed a vendor application whose shared libraries live in /opt/vendor/lib. You added a line containing that directory to /etc/ld.so.conf.d/vendor.conf, but programs still cannot find the libraries. What is the missing step?

LPIC-1 Exam 101-500, objective 102. Linux installation and package management medium

Draft — not checked yet. This question was written from the published exam objectives and cites the clause it comes from, but nobody has yet read it against that clause and signed for it.

It is kept out of search results and out of mock exams until they have. Read the source below before you take the answer as settled.

The options

Correct Run ldconfig so the cache in /etc/ld.so.cache is rebuilt from the configured directories

Correct. The dynamic linker consults the binary cache /etc/ld.so.cache, not the text configuration, so a new directory takes effect only after ldconfig regenerates that cache.

Not correct Run ldd against the new directory to register its libraries

Wrong. ldd only reports the dependencies of a program or library you name; it registers nothing and cannot take a directory as a meaningful argument.

Not correct Reboot, because /etc/ld.so.conf is only read at boot time

Wrong. Nothing reads ld.so.conf at boot on your behalf; it is read by ldconfig whenever you run it. A reboot may appear to work only because distributions run ldconfig during startup or package installation.

Not correct Copy the libraries into /lib, because the dynamic linker only searches /lib

Wrong. The linker searches the cached directories, the paths in a binary's RPATH/RUNPATH, LD_LIBRARY_PATH, and the trusted defaults /lib and /usr/lib. Adding a directory is a supported alternative to copying files around.

Why

The search path for shared libraries is configured in /etc/ld.so.conf and the files it includes (typically /etc/ld.so.conf.d/*.conf), but the dynamic linker reads only the compiled cache /etc/ld.so.cache. ldconfig is the program that walks the configured directories and rebuilds that cache; run it as root after adding, removing, or updating libraries outside the package manager.

Where this comes from

Cited
LPI exam objective 102.3
What it says
Manage shared library configuration: /etc/ld.so.conf, ldconfig and the linker cache.

Practise this

Reading one question is not practice. The trainer will draw a set from objective 102 and space the ones you get wrong.

Practise LPIC-1 Exam 101-500