[FFmpeg-user] How to compile static FFmpeg to a .so file?

Carl Zwanzig cpz at tuunq.com
Tue Jan 31 20:11:50 EET 2023

On 1/31/2023 7:06 AM, Ricardo Zacarias wrote:
>   but there is still no FFmpeg.so file being created in its place.

That's because 'ffmpeg' is an executable, not a library-

# file /usr/local/bin/ffmpeg
/usr/local/bin/ffmpeg: ELF 64-bit LSB executable, x86-64, version 1 
(FreeBSD), dynamically linked, interpreter /libexec/ld-elf.so.1, for FreeBSD 
13.1, FreeBSD-style, stripped
(linux will be quite similar)

It dynamically links to many libraries (81 on my test system), but none are 
called ffmpeg.so. Remember that *nix executables are known by file 
permissions, not by a filename extension (e.g. .exe or .com).

So, you need do decide whether you want a truly static build with all the 
libraries contained in a single executable (which might be a 60mb file), or 
a dynamically-linked one with corresponding .so files. If you just run 
"./configure" with no options, you should get a set of dynamically-linked 
executables and the libraries. Do not forget to "make install" to get them 
in the right places to run.

Oh, and please learn what top-posting is and avoid it on this list (yes, you 
can do that with gmail, takes only a tiny effort to do so).



More information about the ffmpeg-user mailing list