README 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120
  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. <http://anonscm.debian.org/gitweb/?p=dpkg/dpkg.git>
  20. <git://anonscm.debian.org/dpkg/dpkg.git>
  21. Building from git source
  22. ------------------------
  23. To prepare the dpkg source tree from git before starting the build process
  24. some required software needs to be installed:
  25. GNU autoconf >= 2.60
  26. GNU automake >= 1.11
  27. GNU libtool >= 2.0
  28. GNU gettext >= 0.18.2 (or just autopoint if using --disable-nls)
  29. flex
  30. After installing the needed software, and running the following command on
  31. the git tree:
  32. $ autoreconf -f -i
  33. the source should be roughly equivalent to the distributed tar source.
  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. GNU make
  39. pkg-config
  40. perl
  41. To enable optional functionality or programs, this software might be needed:
  42. zlib (used instead of gzip command-line tool)
  43. xz's liblzma (used instead of xz command-line tool)
  44. libbzip2 (used instead of bzip2 command-line tool)
  45. libselinux
  46. curses compatible library (needed on --enable-dselect)
  47. To run the test suite («make check»):
  48. TimeDate perl module
  49. IO-String perl module
  50. Test::Pod perl module (optional)
  51. Test::Perl::Critic perl module (optional)
  52. Perl::Critic::Utils perl module (optional)
  53. Define the environment variable DPKG_DEVEL_MODE to run the test suite
  54. in development mode, to include tests that might not be pertinent during
  55. normal release builds.
  56. To enable additional developer's documentation («make doc») this software
  57. will be needed:
  58. pod2man
  59. doxygen
  60. dot
  61. To enable translated documentation this software will be needed:
  62. po4a >= 0.36.4 (>= 0.41 for VPATH builds)
  63. To enable code coverage («./configure --enable-coverage; make coverage»)
  64. this software is needed:
  65. lcov (from the Linux Test Project)
  66. Devel-Cover perl module
  67. The build process is done by running the usual «./configure; make». To
  68. see all available configuration options please run «./configure --help».
  69. The following configure options might be of interest to disable specific
  70. programs:
  71. --disable-dselect
  72. --disable-start-stop-daemon
  73. --disable-update-alternatives
  74. And the following to disable modifications to the build flags:
  75. --disable-compiler-warnings
  76. --disable-compiler-optimisations
  77. --disable-linker-optimisations