Estou trabalhando em algumas instruções de configuração da máquina e fiquei surpreso ao descobrir que apt-get install A B
elas podem se comportar de maneira diferente apt-get install A && apt-get install B
.
Meu exemplo específico é A == openjdk-7-jdk
e B == ant
.
Então, openjdk-7-jdk
depende de openjdk-7-jre-headless
, o que satisfaz ant
a dependência de java6-runtime-headless
. Mas se você instalá-los como apt-get install openjdk-7-jdk ant
, o APT não parece entender isso e instala default-jre-headless
. Mas se você instalar openjdk-7-jdk
antes da instalação ant
, sua dependência será satisfeita e tudo ficará bem.
O APT geralmente é inteligente o suficiente para descobrir esse tipo de coisa, então por que não pode fazer isso neste caso? Eu gostaria de entender melhor por que funciona dessa maneira, para que esse tipo de coisa não me traga de novo no futuro.
apt-get install -o Debug::pkgProblemResolver=true package1 package2...
. Isso pode lhe dar uma dica de por que está funcionando dessa maneira.