build_system.txt 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. FFmpeg currently uses a custom build system, this text attempts to document
  2. some of its obscure features and options.
  3. Makefile variables:
  4. V
  5. Disable the default terse mode, the full command issued by make and its
  6. output will be shown on the screen.
  7. DESTDIR
  8. Destination directory for the install targets, useful to prepare packages
  9. or install FFmpeg in cross-environments.
  10. Makefile targets:
  11. all
  12. Default target, builds all the libraries and the executables.
  13. fate
  14. Run the fate test suite, note you must have installed it
  15. fate-list
  16. Will list all fate/regression test targets
  17. install
  18. Install headers, libraries and programs.
  19. examples
  20. Build all examples located in doc/examples.
  21. libavformat/output-example
  22. Build the libavformat basic example.
  23. libavcodec/api-example
  24. Build the libavcodec basic example.
  25. libswscale/swscale-test
  26. Build the swscale self-test (useful also as example).
  27. config
  28. Reconfigure the project with current configuration.
  29. Useful standard make commands:
  30. make -t <target>
  31. Touch all files that otherwise would be build, this is useful to reduce
  32. unneeded rebuilding when changing headers, but note you must force rebuilds
  33. of files that actually need it by hand then.
  34. make -j<num>
  35. rebuild with multiple jobs at the same time. Faster on multi processor systems
  36. make -k
  37. continue build in case of errors, this is useful for the regression tests
  38. sometimes but note it will still not run all reg tests.