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:pnetcdf

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
3perl-base:armhf (= 5.40.1-7)
3perlapi-5.40.0:armhf
3python3-click:armhf
3python3-magic:armhf

Conflict

# of packages per conflictConflict
57cpp:amd64
57gcc:armhf
50cpp-15:amd64
41binutils-x86-64-linux-gnu:armhf
35gcc-15:armhf
20binutils:amd64
3perl: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
3 3src:gridtools src:pnetcdf src:qd(*)dh-fortranperl perl-base:armhf (= 5.40.1-7)
3 3src:gridtools src:pnetcdf src:qd(*)dh-fortranlibfile-libmagic-perl perlapi-5.40.0:armhf
3 3src:gridtools src:pnetcdf src:qd(*)dh-fortran python3-click:armhf
3 3src:gridtools src:pnetcdf src:qd(*)dh-fortran python3-magic: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
57 57src:aevol src:ampliconnoise src:apbs src:cctools src:eckit src:examl src:exodusii src:ffindex src:flann src:form src:garli src:gasnet src:genomicsdb src:gfsview src:gloo src:gpaw src:gridtools src:gromacs src:gtg-trace src:h5py src:hpcc src:hyphy src:iqtree src:lammps src:liggghts src:lrslib src:mathgl src:mfem src:molds src:mpi4py src:mpi4py-fft (1128955) src:mrbayes src:murasaki src:music src:neuron src:openfoam src:otf src:phyml src:pnetcdf src:pysph src:python-escript src:pytorch src:pyzoltan src:ray src:relion src:rmpi src:rocalution src:ruby-mpi src:scifem src:silo-llnl src:sopt src:spfft src:spooles src:stopt src:tree-puzzle src:valgrind src:vtk9(*)build-essentialg++cpp(*)mpi-default-devlibopenmpi-devgfortrancpp cpp:amd64
57 57src:aevol src:ampliconnoise src:apbs src:cctools src:eckit src:examl src:exodusii src:ffindex src:flann src:form src:garli src:gasnet src:genomicsdb src:gfsview src:gloo src:gpaw src:gridtools src:gromacs src:gtg-trace src:h5py src:hpcc src:hyphy src:iqtree src:lammps src:liggghts src:lrslib src:mathgl src:mfem src:molds src:mpi4py src:mpi4py-fft (1128955) src:mrbayes src:murasaki src:music src:netgen src:neuron src:openfoam src:otf src:phyml src:pnetcdf src:pysph src:python-escript src:pytorch src:pyzoltan src:ray src:relion src:rmpi src:rocalution src:ruby-mpi src:silo-llnl src:sopt src:spfft src:spooles src:stopt src:tree-puzzle src:valgrind src:vtk9(*)mpi-default-devlibopenmpi-devgfortrangcc(*)build-essentialgcc gcc:armhf
50 50src:aevol src:ampliconnoise src:apbs src:cctools src:eckit src:examl src:exodusii src:flann src:form src:garli src:gasnet src:genomicsdb src:gloo src:gpaw src:gridtools src:gromacs src:gtg-trace src:h5py src:hpcc src:hyphy src:iqtree src:lammps src:mathgl src:molds src:mpi4py src:mpi4py-fft (1128955) src:mrbayes src:murasaki src:music src:neuron src:openfoam src:otf src:phyml src:pnetcdf src:pysph src:python-escript src:pytorch src:pyzoltan src:ray src:relion src:rmpi src:rocalution src:ruby-mpi src:scifem src:silo-llnl src:sopt src:spfft src:tree-puzzle src:valgrind src:vtk9(*)build-essentialg++cppcpp-15(*)mpi-default-devlibopenmpi-devgfortran-15gcc-15cpp-15 cpp-15:amd64
41 41src:aevol src:ampliconnoise src:cctools src:eckit src:examl src:exodusii src:flann src:form src:garli src:gasnet src:genomicsdb src:gloo src:gpaw src:gridtools src:gromacs src:gtg-trace src:hyphy src:iqtree src:molds src:mpi4py src:mpi4py-fft (1128955) src:mrbayes src:murasaki src:neuron src:openfoam src:phyml src:pnetcdf src:pysph src:python-escript src:pytorch src:pyzoltan src:ray src:relion src:rmpi src:rocalution src:ruby-mpi src:scifem src:silo-llnl src:spfft src:tree-puzzle src:valgrind(*)mpi-default-devlibopenmpi-devgfortran-16gcc-16binutilsbinutils-x86-64-linux-gnu(*)debhelperdpkg-devbinutilsbinutils-x86-64-linux-gnu binutils-x86-64-linux-gnu:armhf
35 35src:apbs src:cctools src:eckit src:ffindex src:form src:genomicsdb src:gfsview src:gpaw src:gridtools src:gromacs src:h5py src:lammps src:liggghts src:lrslib src:mathgl src:mfem src:molds src:mpi4py src:mpi4py-fft (1128955) src:murasaki src:music src:netgen src:neuron src:pnetcdf src:pysph src:python-escript src:pytorch src:pyzoltan src:rmpi src:ruby-mpi src:scifem src:sopt src:spooles src:stopt src:vtk9(*)mpi-default-devlibopenmpi-devgfortran-15gcc-15(*)build-essentialg++gcc-15 gcc-15:armhf
20 20src:cctools src:eckit src:form src:genomicsdb src:gpaw src:gridtools src:gromacs src:molds src:mpi4py src:mpi4py-fft (1128955) src:murasaki src:neuron src:pnetcdf src:pysph src:python-escript src:pytorch src:pyzoltan src:rmpi src:ruby-mpi src:scifem(*)debhelperdpkg-devbinutils(*)mpi-default-devlibopenmpi-devgfortran-16gcc-16binutils binutils:amd64
3 3src:gridtools src:pnetcdf src:qd(*)dh-fortranperl(*)debhelperdh-autoreconfautoconfperl perl:armhf

generated: 20260323T000000Z


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://salsa.debian.org/debian-bootstrap-team/botch

The html pages were generated by code which can be retrieved from https://salsa.debian.org/debian-bootstrap-team/boott and which can be redistributed under the terms of the AGPL3+

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