Below are two tables showing the two problem classes that prevent cross compilation on the dependency level. This example tries to satisfy the crossbuild dependencies of all source packages on amd64 as the build architecture for a dummy architecture generated from amd64 (called armhf here) as the host architecture in current Debian sid.

A machine parsable version can be retrieved in dose yaml format

Bugs are associated with packages on this page if they carry the usertag "cross-satisfiability" of the user "debian-cross@lists.debian.org".

You can get an overview of all bugs tagged like that in the Debian bts

Hover over a package name with your cursor for architecture and version information. Hovering over the arrows in the depchain columns will show the dependency that led from one package in the chain to the next.

src:calendar

Top 10 summary

The following is a summary of the full "missing" and "conflict" tables below. It only shows the first and last columns of the full tables and only displays the top 10 rows.

Missing

# of packages per missingUnsatisfied dependency
59dh-ocaml:armhf

Conflict

# of packages per conflictConflict
8cpp-8:amd64
8cpp:amd64
8gcc-8:armhf
8gcc:amd64
5binutils:armhf

missing

The packages in the third column cannot satisfy their (possibly transitive) dependencies because of the unsatisfied dependency in the last column. This is mostly because the binary package providing the dependency in the last column is Multi-Arch:no. Some of these packages need to be Multi-Arch:foreign instead. In some other cases, Build-Depends can be annotated with :native. The depchains column shows the dependency chain(s) from the packages in the third column to the unsatisfied dependency in the last column. The "(*)" placeholder in the depchains column represents any package in the third column. Hovering over the arrows in the depchains column with your cursor will show the dependency that led from one package in the chain to the next.

The output is first grouped by the shared unsatisfied dependency (last column) and then by shared dependency chain (fourth column). The groups are sorted by the number of packages missing the dependency in the last column. Within each group, the output is sorted by the number of packages sharing the same dependency chain.

# of packages per missing# of packages per depchainpackages with missing (possibly transitive) dependenciesDepchainsUnsatisfied dependency
59 59src:approx src:belenios src:botch src:calendar src:camlp4 src:dune src:eliom src:haxe src:janest-core (RM: #870966) src:janest-core-extended src:js-build-tools src:labltk src:libguestfs src:llvm-toolchain-3.8 src:llvm-toolchain-7 src:monotone-viz src:morbig src:nproc src:ocaml-base64 src:ocaml-ctypes src:ocaml-estring src:ocaml-gen src:ocaml-ipaddr src:ocaml-libvirt src:ocaml-migrate-parsetree src:ocaml-obuild src:ocaml-qcheck src:ocaml-qtest src:ocaml-result src:ocaml-rope src:ocaml-sedlex src:ocaml-sha src:ocamlbuild src:ocp-indent src:ocplib-simplex src:omake src:opam-file-format src:optcomp src:planets src:plplot src:ppx-core src:ppx-derivers src:ppx-deriving src:ppx-deriving-yojson src:ppx-driver src:ppx-optcomp src:ppx-sexp-conv src:ppx-tools src:ppx-tools-versioned src:ppx-type-conv src:reactivedata src:spamoracle src:supermin src:ulex0.8 src:virt-top src:why3 src:wyrd src:z3 src:zeroinstall-injector(*) dh-ocaml:armhf

conflict

The packages in the third column cannot satisfy their (possibly transitive) dependencies because the last package(s) in the first depchain have an unsatisfied conflict which is shown in the last column. The second depchain column shows the dependency chain(s) to the package which the last package(s) in the first depchain conflict with. Sometimes, multiple dependency chains sharing the same conflict exist. Hovering over the arrows in the depchains column with your cursor will show the dependency that led from one package in the chain to the next.

The output is first grouped by the shared conflicting dependency (last column) and then by the shared dependency chains (fourth and fifth column). The groups are sorted by the number of packages sharing the conflict in the last column. Within each group, the output is sorted by the number of packages sharing the same dependency chains.

# of packages per conflict# of packages per depchainpackages with (possibly transitive) conflicting dependenciesDepchain 1Depchain2Conflict
8 8src:cairo-ocaml src:calendar src:js-of-ocaml src:mlpost src:ocaml-deriving-ocsigen src:ocaml-sqlite3 src:ocsigenserver src:tyxml(*)build-essentialg++gcc-8cpp-8(*)ocaml-noxgccgcc-8cpp-8 cpp-8:amd64
8 8src:cairo-ocaml src:calendar src:js-of-ocaml src:mlpost src:ocaml-deriving-ocsigen src:ocaml-sqlite3 src:ocsigenserver src:tyxml(*)build-essentialg++cpp(*)ocaml-noxgcccpp cpp:amd64
8 8src:cairo-ocaml src:calendar src:js-of-ocaml src:mlpost src:ocaml-deriving-ocsigen src:ocaml-sqlite3 src:ocsigenserver src:tyxml(*)ocaml-noxgccgcc-8(*)build-essentialg++gcc-8 gcc-8:armhf
8 8src:cairo-ocaml src:calendar src:js-of-ocaml src:mlpost src:ocaml-deriving-ocsigen src:ocaml-sqlite3 src:ocsigenserver src:tyxml(*)build-essentialgcc(*)ocaml-noxgcc gcc:amd64
5 5src:calendar src:ocaml-deriving-ocsigen src:ocaml-sqlite3 src:ocsigenserver src:tyxml(*)ocaml-noxbinutils(*)debhelperdpkg-devbinutils binutils:armhf

generated: 20181203T000000Z


The JSON data used to generate these pages was computed using botch, the bootstrap/build ordering tool chain. The source code of botch can be redistributed under the terms of the LGPL3+ with an OCaml linking exception. The source code can be retrieved from https://gitlab.mister-muffin.de/debian-bootstrap/botch

The html pages were generated by code which can be retrieved from https://gitlab.mister-muffin.de/debian-bootstrap/bootstrap_debian_net and which can be redistributed under the terms of the AGPL3+

For questions and bugreports please contact j [dot] schauer [at] email [dot] de.