भ्रामक, यह नहीं है? मुझे थोड़ा समझाने की।
क्यों?
- 32-बिट सॉफ़्टवेयर 64-बिट सक्षम हार्डवेयर के साथ 64-बिट कर्नेल पर ठीक चलता है।
- कुछ सॉफ्टवेयर अभी भी विशिष्ट 32-बिट पुस्तकालयों पर निर्भर हैं। यह अच्छा नहीं है, लेकिन कभी-कभी हमारे पास इसे बदलने की शक्ति नहीं होती है।
- 32-बिट सॉफ़्टवेयर को निर्भरता को संतुष्ट करने के लिए सिस्टम के लिए उपलब्ध होना है, इसलिए यह 32-बिट रिपॉजिटरी का भी उपयोग करता है।
मैं 2011 की शुरुआत से हूँ। क्या हुआ?
11.10 से पहले उबंटू के 64-बिट संस्करणों में, आम 32-बिट पुस्तकालयों के कुछ सेटों ia32-libs
को एपीटी / डीपीकेजी के प्रतिनिधित्व वाले एकल पैकेज में 64-बिट के रूप में और रिपॉजिटरी में ऐसे स्थान पर पैक किया गया था । यदि आपको किसी एप्लिकेशन के लिए एकल लाइब्रेरी की आवश्यकता होती है, तो यह 32-बिट लाइब्रेरी 1 के 150+ एमबी पर निर्भर करेगा । जाहिर है, यह एक अच्छा डिजाइन नहीं है।
कई आर्किटेक्चर?
नया विचार APT / Dpkg और इसके आस-पास के उपकरणों के लिए तथाकथित "मल्टीकार" क्षमताओं को पेश करना था। यह लॉन्चपैड पर कई ब्लूप्रिंट में प्रस्तुत किया गया था, उनमें से एक है । Oneiric (11.10) मल्टीकार का समर्थन करने वाली पहली रिलीज़ बनी।
यह कैसे काम करता है?
आप Dpkg को बता सकते हैं कि आपका सिस्टम किस आर्किटेक्चर को चलाने में सक्षम है। मेरे 12.04 64-बिट इंस्टॉलेशन पर, यह यहां है:
$ cat /etc/dpkg/dpkg.cfg.d/multiarch
foreign-architecture i386
यह अभी भी डिफ़ॉल्ट होने के i386
साथ संकुल की पूरी दुनिया को खोलता है amd64
:
$ apt-cache show libqt4-core | grep -E "^(Filename|Architecture)"
Architecture: amd64
Filename: pool/universe/q/qt4-x11/libqt4-core_4.8.1-0ubuntu4.3_amd64.deb
$ apt-cache show libqt4-core:i386 | grep -E "^(Filename|Architecture)"
Architecture: i386
Filename: pool/universe/q/qt4-x11/libqt4-core_4.8.1-0ubuntu4.3_i386.deb
उपरोक्त उदाहरण से पता चलता है कि मल्टीचर्क पैकेज अनुचर को केवल उनके पैकेज libqt4-core:i386
को उदाहरण के लिए निर्भर करने में सक्षम बनाता है , और किसी भी 32-बिट लाइब्रेरी / पैकेज को स्थापित करना संभव बनाता है (और इस प्रकार किसी भी पैकेज को स्थापित करने के लिए जो किसी भी 32-बिट लाइब्रेरी / पैकेज पर निर्भर करता है ) बल्कि एक निर्धारित सेट से।
ia32-libs
अनुकूलता
यदि आप ia32-libs
बुनियादी 32-बिट पुस्तकालयों के एक सामान्य सेट को स्थापित करने के लिए सुविधा पैकेज के रूप में पैकेज को स्थापित करने के लिए उपयोग किए गए थे , तो अब आप उपयोग कर सकते हैं । यह पुस्तकालयों के उसी (या कम से कम बहुत समान) सेट के आधार पर एक साधारण रूपक है, लेकिन इसे मल्टीकार की शक्ति के साथ स्थापित किया जाएगा।ia32-libs-multiarch
आगे संबंधित पठन
1 ल्यूसिड (10.04) के लिए ia32-libs
पैकेज स्थापित आकार 155,812.0 kB है।
dpkg --print-foreign-architectures
कैटिंग के बजाय दौड़ने की सलाह देता हूं/etc/dpkg/dpkg.cfg.d/multiarch
। यह 12.04 के बाद मौजूद नहीं है।