dose-buildcheck(1) check installability of build-dependencies


dose-buildcheck [options] binary-repositories source-repository


dose-buildcheck determines, for a set of debian source package control stanzas, called the source repository, whether a build environment for the packages of the source repository can be installed by using packages from the binary repository. For this, only package meta-information is taken into account: build-dependencies and build-conflicts in the source package, and inter-package relationsships expressed in the binary repository. The constraint solving algorithm is complete, that is it finds a solution whenever there exists one, even for multiple disjunctive dependencies and deep package conflicts. This problem is computationally infeasible in theory (that is, NP-complete), but can be solved very efficiently for package repositories that actually occur in practice. Installability of binary packages is analyzed according to their Depends, Conflicts, and Provides fields with their meaning as of Debian policy version 3.9.0. Pre-depends are treated like Depends, and Breaks are treated like Conflicts.

Input Format

The binary-repositories argument is a list of filenames containing stanzas in the format of deb-control(5), separated by one blank line. For instance, the Packages files as found on a Debian mirror server, or in the directory /var/lib/apt/lists/ of a Debian system, are suitable. The source-repository argument is the name of a file containing debian source control stanzas, separated by one blank line. For instance, the Sources files as found on a Debian mirror server, or in the directory /var/lib/apt/lists/ of a Debian system, are suitable.

Multi-arch annotations are correctly considered by distcheck. Packages whose's architecture is neither the native architecture nor in the list of foreign architectures (see below) are ignored. Here, native and foreign refers at the same time to the architecture on which the compilation will be run, and to the target architecture of the compilation. Cross-compilation is not supported in the current version.


Specify the native architecture. The default behavior is to deduce the native architecture from the first package stanza in the input that has an architecture different from all.
--deb-foreign-archs=name [,name] ...
Specify a comma-separated list of foreign architectures. The default is an empty list of foreign architectures.
-f --failures
Only show broken packages that fail the installability check.
-v --successes
Only show packages that do not fail the installability check.
-e --explain
Explain the results in more detail.
Enable info / warnings / debug messages. This option may be repeated up to three times in order to increase verbosity.
-h, --help
Display this list of options.


Compute the list of source packages in Sources for which it is not possible to install a build environment on i386, assuming that the binary packages described in file Packages are available:

 dose-builddebcheck -v -f -e --arch amd64 \


The current version has been rewritten on the basis of the dose3 library by Pietro Abate; it replaces an earlier version that was simply a wrapper for edos-distcheck.