संभव डुप्लिकेट के बारे में ध्यान दें:
AFAIK, यह एक डुप्लिकेट नहीं है कि मैं PPA जोड़ने के बाद कैसे unmet निर्भरता को हल करूं? अन्यथा मैं वहाँ से किसी भी उत्तर का उपयोग करके नीचे दी गई परीक्षण समस्या को हल करके इसे साबित कर सकता हूं।
पृष्ठभूमि:
मुझे इस समस्या का सामना करना पड़ा कि कैसे Ubuntu 14.04.3LTS 64 बिट पर इंस्टॉलेशन वाइन को ठीक किया जाए । यह लक्ष्य पैकेज ( wine
) के सभी पुनरावर्ती निर्भरता के मैनुअल / मानव समीक्षा द्वारा हल किया गया था ।
समस्या का पुन: परीक्षण (टेस्ट केस):
आइए एक ही स्थिति को शांत करें, जो केवल 1 परेशानी पैकेज के साथ सरलीकृत हो।
- वर्चुअलबॉक्स पर नया Ubuntu 14.04 स्थापित करें।
- भंडार खोलें
software-properties-gtk
और सक्षम करेंbackports
। अंतिम संकुल सूची प्राप्त करें
sudo apt-get update
apt-get -s install wine
यह पुष्टि करने के लिए चलाएं किwine
इंस्टॉल किया जा सकता है।libcgmanager0
बैकपोर्ट से परेशान पैकेज स्थापित करें$ apt-cache policy libcgmanager0 libcgmanager0: Installed: 0.24-0ubuntu5 Candidate: 0.24-0ubuntu7.5 Version table: 0.39-2ubuntu2~ubuntu14.04.1 0 100 http://dz.archive.ubuntu.com/ubuntu/ trusty-backports/main amd64 Packages 0.24-0ubuntu7.5 0 500 http://dz.archive.ubuntu.com/ubuntu/ trusty-updates/main amd64 Packages 0.24-0ubuntu7.1 0 500 http://security.ubuntu.com/ubuntu/ trusty-security/main amd64 Packages *** 0.24-0ubuntu5 0 500 http://dz.archive.ubuntu.com/ubuntu/ trusty/main amd64 Packages 100 /var/lib/dpkg/status
संस्करण
apt
स्थापित करने के लिए बाध्य करेंlibcgmanager0
0.39-2ubuntu2~ubuntu14.04.1
sudo apt-get install libcgmanager0=0.39-2ubuntu2~ubuntu14.04.1
अब हम पृष्ठभूमि में उल्लिखित प्रश्न से उपयोगकर्ता की उसी स्थिति में समाप्त होते हैं, वाइन की स्थापना केवल पहले स्तर की निर्भरता पैकेज दिखाते हुए, असमत निर्भरता के साथ विफल हो जाती है।
apt-get -s install wine
Reading package lists... Done Building dependency tree Reading state information... Done Some packages could not be installed. This may mean that you have requested an impossible situation or if you are using the unstable distribution that some required packages have not yet been created or been moved out of Incoming. The following information may help to resolve the situation: The following packages have unmet dependencies: wine : Depends: wine1.6 but it is not going to be installed E: Unable to correct problems, you have held broken packages.
apt-get -s install wine1.6
Reading package lists... Done Building dependency tree Reading state information... Done Some packages could not be installed. This may mean that you have requested an impossible situation or if you are using the unstable distribution that some required packages have not yet been created or been moved out of Incoming. The following information may help to resolve the situation: The following packages have unmet dependencies: wine1.6 : Depends: wine1.6-i386 (= 1:1.6.2-0ubuntu4) E: Unable to correct problems, you have held broken packages.
apt-get -s install wine1.6-i386
Reading package lists... Done Building dependency tree Reading state information... Done Some packages could not be installed. This may mean that you have requested an impossible situation or if you are using the unstable distribution that some required packages have not yet been created or been moved out of Incoming. The following information may help to resolve the situation: The following packages have unmet dependencies: wine1.6-i386:i386 : Depends: libglu1-mesa:i386 but it is not going to be installed or libglu1:i386 Depends: libgphoto2-6:i386 (>= 2.5.2) but it is not going to be installed Depends: libgphoto2-port10:i386 (>= 2.5.2) but it is not going to be installed Recommends: libsane:i386 but it is not going to be installed E: Unable to correct problems, you have held broken packages.
apt-get install
एक-एक करके निर्भरता का पालन करना व्यावहारिक नहीं है ।
आदर्श समाधान:
असली मुद्दा यहाँ
apt
libcgmanager0:i386
संस्करण स्थापित नहीं कर सका0.39-2ubuntu2~ubuntu14.04.1
क्योंकि बैकपोर्स रिपॉजिटरी की प्राथमिकता100
कम है और फिर रिपॉजिटरी0.24-0ubuntu7.5
से संस्करणupdates
500
apt
libcgmanager0:i386
संस्करण स्थापित नहीं कर सका0.24-0ubuntu7.5
क्योंकिlibcgmanager0:amd64
एक भिन्न संस्करण के साथ स्थापित है0.39-2ubuntu2~ubuntu14.04.1
सबसे तेज़ फ़ोकस, बैकपोर्ट से समान i386 संस्करण को स्थापित करने के लिए बाध्य करना है
sudo apt-get install libcgmanager0:i386=0.39-2ubuntu2~ubuntu14.04.1
या इसे (amd64) नियमित रिपॉजिटरी से किसी भी संस्करण में डाउनग्रेड करें
sudo apt-get install libcgmanager0=0.24-0ubuntu7.5
मेरे द्वारा आजमाए गए तरीके / उपकरण:
- पीपीए को अक्षम करने से समस्या का कोई संबंध नहीं है।
aptitude
इंटरैक्टिव मोड में उपयोग करना , कई रिमूव ( > 200 !!! ) के साथ केवल समाधान लाता है ।apt-get install
निर्भरता पेड़ के बाद मैन्युअल रूप से उपयोग करें । पहले और दूसरे स्तर की निर्भरता के रूप में विरोधाभासी, संघर्ष के बारे में सार्थक संदेश नहीं उठाते थे।debfoster
पुनरावर्ती निर्भरता उत्पन्न कर सकता है, लेकिन केवल पहले से स्थापित पैकेज के लिए। हालांकिwine
अभी तक स्थापित नहीं किया गया है।
विषय / मेरी रुचियाँ:
मान लीजिए कि मैं libcgmanager0
पैकेज की समस्या (या libcgmanager0:amd64=0.39-2ubuntu2~ubuntu14.04.1
पहले से स्थापित) के बारे में जाने बिना शराब स्थापित करना चाहता हूं ।
मैं एक डिबग विधि या परेशान पैकेज के नाम को जानने का तरीका ढूंढ रहा हूं और जल्दी से समझने के लिए कि क्या चल रहा था।
सामान्य रूप से समरूप निर्भरता समस्याओं को कैसे डीबग करें?
वहाँ में कुछ नए विकल्प हो सकता है
dpkg
/apt
/aptitude
कि ट्रेस आंतरिक निर्भरता समाधानकर्ता। जोlibcgmanager0
इसके आउटपुट में दिखा सकता है ।यदि इसका कोई विहित उत्तर नहीं है, तो क्या कोई मुझे पुनरावर्ती निर्भरता सूची उत्पन्न करने के लिए एक बेहतर तरीका दिखा सकता है या अधिक विवरण के साथ निर्भरता रिज़ॉल्वर का अनुकरण कर सकता है जो समस्या को ठीक करने में मदद कर सकता है?
सभी निर्भरता क्यों? क्योंकि मैं एक साथ सभी पैकेजों के लिए नीचे दिए गए आदेशों के आउटपुट की जांच करना चाहता हूं।
apt-cache policy <all-dependencies>
apt-get -s install <all-dependencies>
libcgmanager
, लेकिन निर्भरता के साथ? आपने पुनरावर्ती सूची निर्भरता का उल्लेख किया है। क्या आपने कोशिश की है apt-rdepends
?
wine
(या अन्य प्रभावित पैकेज) को स्थापित करने का प्रयास करते हैं तो क्या होता है -o Debug::pkgProblemResolver=yes
?
backports
संस्करण की आवश्यकता क्यों है ?