Tôi đang làm việc với một số hướng dẫn thiết lập máy và tôi rất ngạc nhiên khi thấy rằng nó apt-get install A Bcó thể hoạt động khác hơn apt-get install A && apt-get install B.
Ví dụ cụ thể của tôi là A == openjdk-7-jdkvà B == ant.
Vì vậy, openjdk-7-jdkphụ thuộc vào openjdk-7-jre-headless, thỏa mãn antsự phụ thuộc của java6-runtime-headless. Nhưng nếu bạn cài đặt chúng như apt-get install openjdk-7-jdk ant, APT dường như không tìm ra điều này và cài đặt default-jre-headless. Nhưng nếu bạn cài đặt openjdk-7-jdktrước khi cài đặt ant, sự phụ thuộc của nó được thỏa mãn và tất cả đều tốt.
APT thường đủ thông minh để tìm ra loại điều này, vậy tại sao nó không thể làm như vậy trong trường hợp này? Tôi muốn hiểu rõ hơn về lý do tại sao nó hoạt động theo cách này, vì vậy loại điều này sẽ không khiến tôi gặp lại trong tương lai.
apt-get install -o Debug::pkgProblemResolver=true package1 package2.... Điều đó có thể cho bạn một gợi ý tại sao nó hoạt động theo cách đó.