|
|
|
FFmpeg currently uses a custom build system, this text attempts to document
|
|
|
|
some of its obscure features and options.
|
|
|
|
|
|
|
|
Makefile variables:
|
|
|
|
|
|
|
|
V
|
|
|
|
Disable the default terse mode, the full command issued by make and its
|
|
|
|
output will be shown on the screen.
|
|
|
|
|
|
|
|
DESTDIR
|
|
|
|
Destination directory for the install targets, useful to prepare packages
|
|
|
|
or install FFmpeg in cross-environments.
|
|
|
|
|
|
|
|
Makefile targets:
|
|
|
|
|
|
|
|
all
|
|
|
|
Default target, builds all the libraries and the executables.
|
|
|
|
|
|
|
|
fate
|
|
|
|
Run the fate test suite, note you must have installed it
|
|
|
|
|
|
|
|
fate-list
|
|
|
|
Will list all fate/regression test targets
|
|
|
|
|
|
|
|
install
|
|
|
|
Install headers, libraries and programs.
|
|
|
|
|
|
|
|
libavformat/output-example
|
|
|
|
Build the libavformat basic example.
|
|
|
|
|
|
|
|
libavcodec/api-example
|
|
|
|
Build the libavcodec basic example.
|
|
|
|
|
|
|
|
libswscale/swscale-test
|
|
|
|
Build the swscale self-test (useful also as example).
|
|
|
|
|
|
|
|
|
|
|
|
Useful standard make commands:
|
|
|
|
make -t <target>
|
|
|
|
Touch all files that otherwise would be build, this is useful to reduce
|
|
|
|
unneeded rebuilding when changing headers, but note you must force rebuilds
|
|
|
|
of files that actually need it by hand then.
|
|
|
|
|
|
|
|
make -j<num>
|
|
|
|
rebuild with multiple jobs at the same time. Faster on multi processor systems
|
|
|
|
|
|
|
|
make -k
|
|
|
|
continue build in case of errors, this is useful for the regression tests
|
|
|
|
sometimes but note it will still not run all reg tests.
|
|
|
|
|