How can I change the filename of a shared library after building a program that depends on it?
We can use patchelf: patchelf –replace-needed liboriginal.so.1 libreplacement.so.1 my-program We can also remove a dependency: patchelf –remove-needed libfoo.so.1 my-program Add a dependency: patchelf –add-needed libfoo.so.1 my-program Or change the path where to search for the libraries (rpath): patchelf –set-rpath /path/to/lib:/other/path my-program