README 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. dpkg - Debian's package maintenance system
  2. The primary interface for the dpkg suite is the ‘dselect’ program;
  3. a more low-level and less user-friendly interface is available in
  4. the form of the ‘dpkg’ command.
  5. Releases
  6. --------
  7. The current legacy, stable and development releases can be found at:
  8. <http://ftp.debian.org/debian/pool/main/d/dpkg/>
  9. For older releases check:
  10. <http://snapshot.debian.org/package/dpkg/>
  11. Mailing List
  12. ------------
  13. The subscription interface and web archives can be found at:
  14. <https://lists.debian.org/debian-dpkg/>
  15. The mailing list address is (no subscription required to post):
  16. debian-dpkg@lists.debian.org
  17. Source Repository
  18. -----------------
  19. <https://anonscm.debian.org/cgit/dpkg/dpkg.git>
  20. Building from git source
  21. ------------------------
  22. To prepare the dpkg source tree from git before starting the build process
  23. some required software needs to be installed:
  24. GNU autoconf >= 2.60
  25. GNU automake >= 1.11
  26. GNU libtool >= 2.0
  27. GNU gettext >= 0.19 (or just autopoint if using --disable-nls)
  28. After installing the needed software, and running the following command on
  29. the git tree:
  30. $ autoreconf -f -i
  31. the source should be roughly equivalent to the distributed tar source.
  32. To enable translated documentation this software will be needed:
  33. po4a >= 0.43
  34. Building from tar source
  35. ------------------------
  36. The minimum software required to configure and build dpkg from a tarball is:
  37. C89 compiler with few C99 extensions (see doc/coding-style.txt)
  38. perl (see doc/coding-style.txt)
  39. pkg-config
  40. GNU make
  41. To enable optional functionality or programs, this software might be needed:
  42. libmd (used by libdpkg, currently falling back to embedded code)
  43. libz (from zlib, used instead of gzip command-line tool)
  44. liblzma (from xz utils, used instead of xz command-line tool)
  45. libbz2 (from bzip2, used instead of bzip2 command-line tool)
  46. libselinux
  47. curses compatible library (needed on --enable-dselect)
  48. To run the test suite («make check»):
  49. IO-String perl module (optional)
  50. Test::MinimumVersion perl module (optional, author)
  51. Test::Pod perl module (optional)
  52. Test::Spelling perl module (optional, author)
  53. Test::Strict perl module (optional)
  54. Test::Synopsis perl module (optional, author)
  55. Test::Perl::Critic perl module (optional, author)
  56. aspell (optional, author)
  57. aspell-en (optional, author)
  58. Define the environment variable DPKG_DEVEL_MODE or AUTHOR_TESTING to run
  59. the test suite in development mode, to include tests that might not be
  60. pertinent during normal release builds.
  61. To enable additional developer's documentation («make doc») this software
  62. will be needed:
  63. pod2man
  64. doxygen
  65. dot
  66. To enable code coverage («./configure --enable-coverage; make coverage»)
  67. this software is needed:
  68. lcov (from the Linux Test Project)
  69. Devel-Cover perl module
  70. The build process is done by running the usual «./configure; make». To
  71. see all available configuration options please run «./configure --help».
  72. The following configure options might be of interest to disable specific
  73. programs:
  74. --disable-dselect
  75. --disable-start-stop-daemon
  76. --disable-update-alternatives
  77. And the following to disable modifications to the build flags:
  78. --disable-compiler-warnings
  79. --disable-compiler-optimizations
  80. --disable-linker-optimizations