64-बिट लिनक्स मशीन पर एंड्रॉइड एसडीके


97

क्या 64-बिट लिनक्स मशीन पर एंड्रॉइड एसडीके का उपयोग करना विकसित करना संभव है। उपलब्ध एसडीके डाउनलोड लिनक्स के 32-बिट संस्करणों के लिए ही प्रतीत होते हैं।

जवाबों:


42

हाँ यही है। आपको ia32 लाइब्रेरी स्थापित करने की आवश्यकता है। की जाँच करें उबंटू लिनक्स समस्या निवारण अनुभाग

apt-get install ia32-libs
apt-get install sun-java6-jdk

5
ia32-libs मेरी मशीन पर स्थापित नहीं होगा। नीचे Notz का उत्तर देखें।
मैथ्यू गिलियार्ड

5
यह केवल उबंटू संस्करणों के लिए उपयुक्त है, इससे पहले कि वे मल्टीकार समर्थन में लाए। सही दृष्टिकोण अब सही i386 पैकेज स्थापित करने के लिए है
याकूब

विडंबना यह है कि "सही" उत्तर केवल उबंटू / सूक्ति चल रही 64-बिट मशीनों के उस अंश के लिए सही है। लिनक्स के विखंडन से पता चलता है कि "सही" उत्तर एक अधिक सामान्य है या आंशिक रूप से सही उत्तरों में से सभी का संयोजन है। मैं एक के लिए अधिक सामान्यीकृत उत्तर पसंद करता हूं, क्योंकि पूर्णता और गैर-अप्रचलन के बारे में सुनिश्चित करने के लिए बहुत सारे संभावित बदलाव और अपडेट हैं। मेरा वोट एक अच्छा "हां यह संभव है। RTFM और 32-बिट / i386 पैकेज स्थापित करें।", शैली विक्रेता-तटस्थ उत्तर। FYI करें - वे इसे ठीक नहीं करेंगे क्योंकि वे चाहते हैं कि हम इसके बजाय Android Studio का उपयोग करें।
सिंथिया वी

इस लिंक पर अब कोई समस्या निवारण अनुभाग नहीं है, यह वर्तमान इंस्टॉलेशन निर्देशों पर जाता है: developer.android.com/studio/install.html शीर्ष दाएँ प्लेटफ़ॉर्म चयन बॉक्स पर 'linux' चुनें।
amotzg

182

पर (के) उबंटू आपको 32-बिट पैकेजों की आवश्यकता है:

sudo apt-get install libstdc++6:i386 libgcc1:i386 zlib1g:i386 libncurses5:i386

एमुलेटर चलाने के लिए आपको वह अतिरिक्त पैकेज चाहिए:

sudo apt-get install libsdl1.2debian:i386

12
इस जवाब के लिए एक महान धन्यवाद, आपने मेरे कंप्यूटर को ia32-libs (हर जगह सलाह दी गई) स्थापित करने से बचाया, जो आपके द्वारा उल्लेखित पैकेजों के साथ अन्य बेकार निर्भरताओं की एक वैगन लाता है। आपके समाधान ने मेरे लिनक्स मिंट 13.
pavel_kazlou

ऊपर टिप्पणीकार से सहमत, ubuntu 12.04 64bit
मैथ्यू गिलियार्ड

4
मेरे Ubuntu 12.10 64 बिट के लिए काम किया। बहुत बहुत धन्यवाद!

1
उबंटू 13.04 64 बिट में अभी भी एडीटी एसडीके के साथ एक ही समस्या है, और इस समाधान ने मेरे लिए भी काम किया।
GrandOpener

2
Ubuntu 14.04 64bit के लिए भी काम करता है। मुचस ग्रेसिया!
लैंगली

34

Android एसडीके की आवश्यकता है:

  • एंड्रॉइड एसडीके के साथ फेडोरा 17 64 बिट:

    sudo yum install glibc.i686 zlib.i686 libstdc++.i686 ncurses-libs.i686
  • फेडोरा 20 64 बिट एंड्रॉइड एसडीके के साथ

    sudo yum install glibc zlib libstdc++ ncurses-libs mesa-libGL-devel adb

1
फेडोरा विशिष्ट जानकारी के लिए धन्यवाद। आधिकारिक मदद में केवल ubuntu संकुल सूचीबद्ध है
gspatel

2
जब मैंने पहली बार यह कोशिश की तो मुझे "त्रुटि: संरक्षित मल्टीबिल संस्करण: libstdc ++ - 4.7.2-2.fc17.i686! = Libstdc ++ - 4.7.0-5.fc17.x86_64" मिला। यम अपग्रेड libstdc ++ के साथ फिक्स्ड
pinoyyid


@MariuszS, उस दूसरे परिदृश्य में, क्या आप स्पष्ट कर सकते हैं कि "64 बिट एंड्रॉइड एसडीके" से आपका क्या मतलब है। मेरी समझ यह है कि एंड्रॉइड एसडीके में 32-बिट बायनेरिज़ हैं, यही कारण है कि हमें पहली बार में यह समस्या है।
कार्लोस मैकसेट

मुझे यकीन नहीं है, लेकिन शायद कुछ समय पहले दो संस्करणों (ग्रहण 64 बिट के साथ बंडल किया गया था)। उत्तर अद्यतन
MariuszS

15

के लिए डेबियन खरखरा आप सक्षम करने के लिए multiarch और उसके बाद अन्य उत्तर में सूचीबद्ध या के रूप में उपकरण या मंच-उपकरण निर्देशिका से बाइनरी द्वारा आवश्यक के रूप में निर्भर पुस्तकालयों स्थापित:

sudo dpkg --add-architecture i386
sudo apt-get update
sudo apt-get install libc6:i386

आगे के कामों के लिए संदर्भित .so-files के लिए ldd के साथ जाँच करें।

मंच-उपकरण $ ldd adb                       
    linux-gate.so.1 => (0xf77bb000)
    librt.so.1 => /lib/i386-linux-gnu/i686/cmov/librt.so.1 (0xf779b000)
    libncurses.so.5 => नहीं मिला
    libpthread.so.0 => /lib/i386-linux-gnu/i686/cmov/libpthread.so.0 (0xf7781000)
    libstdc ++। so.6 => नहीं मिला
    libm.so.6 => /lib/i386-linux-gnu/i686/cmov/libm.so.6 (0xf775b000)
    libgcc_s.so.1 => /lib/i386-linux-gnu/libgcc_s.so.1 (0xf773e000)
    libc.so.6 => /lib/i386-linux-gnu/i686/cmov/libc.so.6 (0xf75db000)
    libdl.so.2 => /lib/i386-linux-gnu/i686/cmov/libdl.so.2 (0xf75d6000)
    /lib/ld-linux.so.2 (0xf77bc000)

तो libncurses5 स्थापित करें जारी रखें : i386 और libstdc ++ 6: i386 चलाने में सक्षम होने के लिए

मंच-उपकरण $ ।/adb 
Android डीबग ब्रिज संस्करण 1.0.31
...

धन्यवाद @ user2255304! इसने मेरे लिए काम किया। एंड्रॉइड स्टूडियो को स्थापित करने की कोशिश कर रहा android-studio/sdk/tools/mksdcardथा और एक 32 बिट निष्पादन योग्य था। ऊपर दिए गए चरणों का पालन किया libc6:i386और स्थापित किया और libstdc++6:i386। बाइनरी अब ठीक काम कर रही है।
राजकुमार एस

9

Ubuntu 13.1 के लिए ia32-libs अब उपलब्ध नहीं है। तो, आप इसे आज़मा सकते हैं:

sudo apt-get install lib32z1 lib32ncurses5 lib32stdc++6

ये पैकेज नाम Ubuntu 14.04 के लिए भी काम करते हैं। यह मुझे 'सही' दृष्टिकोण प्रतीत होता है क्योंकि ये पैकेज amd64 आर्किटेक्चर रेपो से आते हैं। पहले की गई टिप्पणी में यह बताया गया है: 386 पैकेज वास्तुकला पैकेजों को मिलाते हैं जो जोखिम भरा लगता है।
डॉन पार्क

@ डोनपार्क नहीं, यह जोखिम भरा नहीं है। इसे मल्टीचार् कहा जाता है।
लेओ लाम

5

CentOS 6.2 पर मुझे निम्नलिखित के साथ काम करना पड़ा:

yum install glibc.i686 glibc-devel.i686 libstdc++.i686 zlib-devel.i686 ncurses-devel.i686 libX11-devel.i686 libXrender.i686 libXrandr.i686


3
CentOS 7 पर भी काम करता है!
फिलिप डेविड


4

जो लोग स्लैकवेयर का उपयोग कर रहे हैं, उनके लिए यहां क्लिक करें।

मैंने इसे वर्तमान के साथ आजमाया और यह काम करता है।

संक्षेप में, आपको मल्टीबिल पैकेज स्थापित करके 32 बिट समर्थन को सक्षम करने की आवश्यकता है।

कदम:

1) पैकेज डाउनलोड करें:

> wget -np -nH -r -A txz,tgz \
> http://slackware.com/~alien/multilib/14.0/

2) स्थापित पैकेज:

~/multilib$ \
> cd \~alien/multilib/14.0/
~/multilib/~alien/multilib/14.0/$ \
> su -c "upgradepkg --reinstall --install-new *.t?z"

3) संगतता पैकेज स्थापित करें:

~/multilib/~alien/multilib/14.0/$ \
> su -c "upgradepkg --reinstall --install-new *-compat32/*/*.t?z"

सिस्टम और वॉइसिला को पुनरारंभ करें।




0

आप स्वयं एसडीके का निर्माण कर सकते हैं। मै कोशिश करूँगा। 32-बिट संस्करण बहुत धीमा है।


0

अनुमान: एंड्रॉइड एसडीके 32 बिट संस्करण स्थापित है

मेरे उबंटू 12 64 बिट ओएस पर, मुझे पिछली टिप्पणियों में वर्णित किसी भी पैकेज को स्थापित करने की आवश्यकता नहीं थी। निम्न का उपयोग कर स्थापित करें Android SDK Manager- के
तहत Tools:
Android SDK Tools
Android SDK Platform-tools
Latest Android SDK Build-tools

नवीनतम Android API के तहत (मेरे मामले में Android 4.3 (API 18)):
SDK Platform
ARM EABI v7a System Image

के तहत Extras:
Android Support Library

चेतावनी- मैंने पहले ia32-libsपैकेज का उपयोग करने की कोशिश की थी । यह सफलतापूर्वक स्थापित हो गया और मैं अपने Android ऐप्स चला पा रहा था। हालाँकि, अगर मैंने मशीन को पुनः आरंभ किया, तो यह कभी बूट नहीं होगा। इसलिए, मेरा सुझाव है कि ia32-libsपैकेज स्थापित करने से बचना चाहिए । अगर यह आपके लिए काम करता है तो बहुत अच्छा। शायद यह मेरे पीसी के लिए प्रतिबंधित एक मुद्दा था।


0

उपरोक्त क्यू और ए पर एक मामूली मोड़: मैं 64-बिट System76 लैपटॉप पर डेबियन व्हीज़ी (7.0) चला रहा हूं, मैंने पहले से ही मल्टीचर्च को सक्षम कर लिया था और अधिकांश देशी एंड्रॉइड टूल ठीक लग रहे थे ... जब तक कि मैंने बिल्डिंग की कोशिश नहीं की एक ऐप। बिल्ड विफल रहा क्योंकि संसाधन उपयोगिताओं में से एक आवश्यक (32-बिट) libz.so.1।

apt-get lib32z1 स्थापित करें

... यह मेरे लिए तय किया।



0

आर्क यूजर्स के लिए:
आपको lib32-gcc-libs और lib32-ncurses पैकेज इंस्टॉल करने होंगे जो कि मल्टीलिब रिपॉजिटरी में हैं। (जिसे आपको सक्षम करना है )

pacman -S lib32-gcc-libs  
pacman -S lib32-ncurses

1
"पैकेज नहीं मिला"
fungusanthrax
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.