Is /usr/local/lib searched for shared libraries?
Make sure your LD_LIBRARY_PATH
is set up to include all directories you want to search and then test it again.
You can test this quickly with:
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib ffmpeg
which will set it only for that invocation.
Alternatively, you can edit /etc/ld.so.conf
which contains the default directories searched. Some Linux distributions may not include /usr/local/lib
in that file.
Note that you may also need to update the cache /etc/ld.so.cache
by running ldconfig
(as root, or with sudo
).
From http://tldp.org/HOWTO/Program-Library-HOWTO/shared-libraries.html:
The GNU standards recommend installing by default all libraries in /usr/local/lib when distributing source code (and all commands should go into /usr/local/bin).
...
The list of directories to be searched is stored in the file /etc/ld.so.conf. Many Red Hat-derived distributions don't normally include /usr/local/lib in the file /etc/ld.so.conf. I consider this a bug, and adding /usr/local/lib to /etc/ld.so.conf is a common ``fix'' required to run many programs on Red Hat-derived systems.
On Debian /etc/ld.so.conf
contains include /etc/ld.so.conf.d/*.conf
, and /etc/ld.so.conf.d/libc.conf
contains
# libc default configuration
/usr/local/lib