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