Getting 'error while loading shared libraries' when using -L to specifically find the library
compiler-errors, gcc
Solution
ldd example.out
That will give a lot of useful information about dynamic linking. More specifically though, your problem most likely lies with the path of the library not being in.
/etc/ld.so.conf
Note, that if you update that file, you must then run
ldconfig -v
Problem
I've been trying to solve this for a few hours now. I am compiling some c files using gcc. The files require libpbc, so I am using the -L flag to point gcc at the directory which contains libpbc.so.1. The code compiles without error yet when I attempt to run it I get the following error message: ./example.out: error while loading shared libraries: libpbc.so.1: cannot open shared object file: No such file or directory Looking at similar questions this error message seems to indicate that gcc can't find libpbc.so.1. I know gcc sees libpbc.so.1 because when I rename libpbc.so.1 to something else it fails to compile. I am using -L to point to the directory which contains libpbc.so.1. Not sure what next steps I can take to figure this out. Would appreciate any ideas. What does this error message mean exactly? EDIT Running ldd example.out results in: ``` linux-gate.so.1 => (0xb7fe3000) libpbc.so.1 => not found libgmp.so.3 => /usr/lib/libgmp.so.3 (0xb7f87000) ```