2012-06-28 12 views
9

मैं आर्कलिंक्स, कर्नेल 3.4.4, बैश संस्करण 4.2.2 9 चला रहा हूं। मैंने यहां से एंड्रॉइड एसडीके डाउनलोड किया: http://developer.android.com/sdk/index.htmlबैश को एडब नहीं मिल सकता है भले ही यह निश्चित रूप से

एक बार निकाला गया, मैंने ~/android-sdk-linux/tools/android किया और एसडीके प्लेटफ़ॉर्म टूल पैकेज स्थापित किया।

वहां से मैंने कोशिश की है:

> ls -l ~/android-sdk-linux/platform-tools/adb 
-rwxr-xr-x 1 mediocregopher mediocregopher 204436 Jun 28 13:20 /home/mediocregopher/android-sdk-linux/platform-tools/adb 

> file ~/android-sdk-linux/platform-tools/adb 
/home/mediocregopher/android-sdk-linux/platform-tools/adb: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.8, stripped 

> ~/android-sdk-linux/platform-tools/adb 
bash: /home/mediocregopher/android-sdk-linux/platform-tools/adb: No such file or directory 

जाहिर फ़ाइल नहीं है और बहुत कम निष्पादन पर, क्यों नहीं बैश यह पता लगाने के लिए लग सकता है? मैंने प्लेटफॉर्म-टूल्स फ़ोल्डर को अपने पथ के साथ-साथ सुडो और सु-आईएनजी में जोड़ने का प्रयास किया है, लेकिन इससे कोई फर्क नहीं पड़ता कि फ़ाइल की तरह यह कैसा लगता है। क्या किसी को पता है कि क्या हो रहा है?

उत्तर

17

आप 64 बिट सिस्टम पर चल रहे हैं और आपके पास 32 बिट संगतता लाइब्रेरी स्थापित नहीं है।

त्रुटि वास्तव में इस तथ्य से आ रही है कि इसे 32 बिट ld.so नहीं मिल रहा है।

यदि आप उबंटू/डेबियन का उपयोग कर रहे हैं, तो मुझे लगता है कि आपको केवल sudo apt-get install ia32-libs की आवश्यकता है और इसे काम करना चाहिए।

+0

+1 यह ENOENT के लिए [execve (2)] (http://www.kernel.org/doc/man-pages/online/pages/man2/execve.2.html से बहुत कम आम कारण है)) – pilcrow

+1

यह समस्या हो रही है। मुझे आर्क के AUR में एंड्रॉइड-एसडीके मिला था लेकिन इसे इंस्टॉल नहीं किया जा सका क्योंकि इसे lib32- * पैकेजों का एक गुच्छा चाहिए। बाहर निकलता है मैं बस multilib रेपो सक्षम करने के लिए आवश्यक है। मुझे सही दिशा में इंगित करने के लिए धन्यवाद :) –

+1

[एंड्रॉइड एसडीके स्थापित करना] (http://developer.android.com/sdk/installing/index.html?pkg=tools) "उबंटू समस्या निवारण" के तहत इसे समझाता है। – reergymerej

9

उबंटू (13.10 और उच्चतर) के 'आधुनिक' संस्करणों के लिए, स्वीकार्य उत्तर अब काम नहीं कर रहा है: उन्होंने '32 बिट कंपैबिलिटी लाइब्रेरीज़ 'को हटा दिया और इसके बजाय आपको एक दूसरे के बगल में खुशी से सह-अस्तित्व वाले बहुआयामी पैकेजों का उपयोग करने की आवश्यकता है। AskUbuntu पर What happened to the ia32-libs package? देखें।

sudo apt-get install libc6:i386 

इसके बाद, मैं encounterd adb द्वारा कि libstdc++ की एक 32 बिट संस्करण भी आवश्यक है:

इसके बजाय आप libc के 32 बिट संस्करण स्थापित करने की आवश्यकता अब

sudo apt-get install libstdc++6:i386 

adb चाहिए काम कर रहे हैं (दोबारा)।

Android SDK on a 64-bit linux machine दिखाता है कि कुछ अन्य पुस्तकालयों की भी आवश्यकता है। मुझे उन्हें भी आवश्यकता नहीं लगती थी, लेकिन हो सकता है कि वे पहले ही इंस्टॉल हो चुके हों।

+0

+1, इस समाधान ने मुझे 64 बिट सिस्टम पर एनाकोंडा 32 बिट इंस्टॉल करने में भी मदद की –

संबंधित मुद्दे

 संबंधित मुद्दे