जवाबों:
आप 64-बिट सिस्टम पर हैं, और 32-बिट लाइब्रेरी समर्थन स्थापित नहीं है।
(यदि आप अपने सेटअप रीड नोट में sudo का उपयोग नहीं करते हैं)
फेडोरा / रेड हैट परिवार में अधिकांश डेस्कटॉप लिनक्स सिस्टम:
pkcon install glibc.i686
संभवतः कुछ डेस्कटॉप डेबियन / उबंटू सिस्टम ?:
pkcon install ia32-libs
फेडोरा या नई रेड हैट, CentOS:
sudo dnf install glibc.i686
पुराने RHEL, CentOS:
sudo yum install glibc.i686
यहां तक कि पुराने RHEL, CentOS:
sudo yum install glibc.i386
डेबियन या उबंटू:
sudo apt-get install ia32-libs
आपको (प्रथम, मुख्य) पुस्तकालय चाहिए जो आपको चाहिए।
किसी को भी स्थापित करने की आवश्यकता होगी glibc.i686
या glibc.i386
शायद अन्य पुस्तकालय निर्भरता में भी चलेगा। एक मनमाना पुस्तकालय प्रदान करने वाले पैकेज की पहचान करने के लिए, आप उपयोग कर सकते हैं
ldd /usr/bin/YOURAPPHERE
यदि आप सुनिश्चित नहीं हैं कि यह /usr/bin
आप पर वापस गिर सकता है
ldd $(which YOURAPPNAME)
आउटपुट इस तरह दिखेगा:
linux-gate.so.1 => (0xf7760000)
libpthread.so.0 => /lib/libpthread.so.0 (0xf773e000)
libSM.so.6 => not found
लापता पुस्तकालयों (उदाहरण libSM.so.6
के लिए उपरोक्त आउटपुट में) की जांच करें, और प्रत्येक के लिए आपको उस पैकेज को खोजने की आवश्यकता है जो इसे प्रदान करता है।
Fedora / Red Hat Enterprise / CentOS:
dnf provides /usr/lib/libSM.so.6
या, पुराने आरएचईएल / सेंटो पर:
yum provides /usr/lib/libSM.so.6
या, डेबियन / उबंटू पर:
पहले, के लिए डेटाबेस को स्थापित और डाउनलोड करें apt-file
sudo apt-get install apt-file && apt-file update
फिर के साथ खोजें
apt-file find libSM.so.6
/usr/lib
(सामान्य) मामले में उपसर्ग पथ पर ध्यान दें ; शायद ही, कुछ पुस्तकालय अभी भी /lib
ऐतिहासिक कारणों से रहते हैं ... विशिष्ट 64-बिट सिस्टम पर, 32-बिट लाइब्रेरी में रहते हैं /usr/lib
और 64-बिट लाइब्रेरी में रहते हैं /usr/lib64
।
(डेबियन / उबंटू मल्टी-आर्किटेक्चर लाइब्रेरी को अलग तरीके से व्यवस्थित करते हैं।)
ऊपर आपको एक पैकेज नाम देना चाहिए, जैसे:
libSM-1.2.0-2.fc15.i686 : X.Org X11 SM runtime library
Repo : fedora
Matched from:
Filename : /usr/lib/libSM.so.6
इस उदाहरण में पैकेज का नाम है libSM
और पैकेज के 32 बिट संस्करण का नाम हैlibSM.i686
।
फिर आप pkcon
GUI या sudo dnf/yum/apt-get
उपयुक्त के रूप में अपेक्षित लाइब्रेरी को हथियाने के लिए पैकेज स्थापित कर सकते हैं ... जैसे pkcon install libSM.i686
। यदि आवश्यक हो तो आप संस्करण को पूरी तरह से निर्दिष्ट कर सकते हैं। जैसे sudo dnf install ibSM-1.2.0-2.fc15.i686
।
कुछ पुस्तकालयों में उनके नाम से पहले एक "युगांतरकारी" पदनाम होगा; इसे छोड़ा जा सकता है (जिज्ञासु नीचे के नोट्स पढ़ सकता है)।
गुप्त रूप से, आप जिस समस्या का सामना कर रहे हैं, उसका तात्पर्य है कि आपका RPM (सम्मान। DPkg / DSelect) डेटाबेस दूषित है, या आप जिस एप्लिकेशन को चलाने का प्रयास कर रहे हैं, वह पैकेज मैनेजर के माध्यम से इंस्टॉल नहीं किया गया था। यदि आप लिनक्स में नए हैं, तो आप संभवत: जब भी संभव हो, अपने पैकेज मैनेजर के अलावा अन्य स्रोतों से सॉफ्टवेयर का उपयोग करने से बचना चाहते हैं ...
प्रकार
su -c
हर बार जब आप देखते हैं sudo
, जैसे,
su -c dnf install glibc.i686
नाम से पहले "युग" पदनाम इस तरह से एक कलाकृति है कि अंतर्निहित RPM लाइब्रेरी संस्करण संख्याओं को संभालती है; जैसे
2:libpng-1.2.46-1.fc16.i686 : A library of functions for manipulating PNG image format files
Repo : fedora
Matched from:
Filename : /usr/lib/libpng.so.3
यहाँ, 2:
छोड़ा जा सकता है; बस pkcon install libpng.i686
या sudo dnf install libpng-1.2.46-1.fc16.i686
। (यह अस्पष्ट रूप से कुछ का अर्थ है: कुछ बिंदु पर, libpng
पैकेज का संस्करण संख्या पीछे की ओर लुढ़का हुआ था, और यह सुनिश्चित करने के लिए "युगांतर" बढ़ाना पड़ा कि अपडेट के दौरान नए संस्करण को "नया" माना जाएगा। या ऐसा ही कुछ हुआ। दो बार। ।)
विभिन्न पैकेज प्रबंधक विकल्पों को अधिक पूरी तरह से स्पष्ट करने और कवर करने के लिए अपडेट किया गया (मार्च, 2016)
बस एक ताजा स्थापित CentOS 6.4 64-बिट मशीन पर एक ही समस्या का सामना करना पड़ा। एक एकल yum कमांड इस तरह की 99% समस्याओं को ठीक करेगा:
yum groupinstall "संगतता पुस्तकालय"
या तो इसे 'sudo' के साथ उपसर्ग करें या रूट के रूप में चलाएं, जो भी आपके लिए सबसे अच्छा काम करता है।
सामान्य तौर पर, जब आपको इस तरह की त्रुटि मिलती है, तो बस करें
yum provides ld-linux.so.2
तो आप कुछ इस तरह देखेंगे:
glibc-2.20-5.fc21.i686 : The GNU libc libraries
Repo : fedora
Matched from:
Provides : ld-linux.so.2
और फिर आप बस निम्नलिखित को चलाते हैं जैसे BRPocock ने लिखा है (यदि आप सोच रहे थे कि तर्क क्या था ...):
yum install glibc.i686
बस BRPocock में एक टिप्पणी जोड़ना चाहता था, लेकिन मेरे पास पर्याप्त विशेषाधिकार नहीं हैं।
इसलिए मेरा योगदान आईबीएम के इंटीग्रेशन बस बंडल से आईबीएम इंटीग्रेशन टूलकिट स्थापित करने की कोशिश करने वाले सभी लोगों के लिए था।
जब आप फ़ोल्डर / Integration_Toolkit / IM_Linux से "इंस्टालेशन मैनेजर" कमांड चलाने का प्रयास करते हैं (चलाने के लिए फ़ाइल "इंस्टॉल" है) आपको इस पोस्ट में दिखाई गई त्रुटि मिलती है।
इस समस्या को ठीक करने के लिए और निर्देश आपको इस IBM के वेब पेज में मिलेंगे: https://www-304.ibm.com/support/docview.wss?uid=swg21459143
आशा है कि यह किसी को भी स्थापित करने की कोशिश करने में मदद करता है।
मैं डेबियन के लिए जोड़ूंगा आपको सिस्टम में कम से कम एक कंपाइलर की जरूरत है ( डेबियन स्ट्रेच और जेसी 32-बिट लाइब्रेरी के अनुसार )।
मैंने apt-get install -y gcc-multilib
डेबियन के आधार पर अपने डॉक कंटेनर में 32-बिट निष्पादन योग्य फ़ाइल चलाने के लिए स्थापित किया: जेसी।
आप .i686
इसके बजाय OpenJDK 32-बिट ( ) भी स्थापित कर सकते हैं । मेरे परीक्षण के अनुसार, इसे स्थापित किया जाएगा और समस्याओं के बिना काम करेगा।
sudo yum install java-1.8.0-openjdk.i686
ध्यान दें:
जावा-1.8.0-openjdk पैकेज में शामिल सिर्फ जावा रनटाइम एनवायरनमेंट । यदि आप जावा प्रोग्राम विकसित करना चाहते हैं तो जावा-1.8.0-ओपेनजेक-डेवेल पैकेज स्थापित करें।
अधिक जानकारी के लिए यहां देखें ।