Android SDK บนเครื่อง linux 64 บิต


97

เป็นไปได้ไหมที่จะพัฒนาโดยใช้ Android SDK บนเครื่อง linux 64 บิต การดาวน์โหลด SDK ที่มีให้ดูเหมือนจะเป็นเพียงสำหรับ Linux เวอร์ชัน 32 บิต

คำตอบ:


42

ใช่แล้ว. คุณต้องติดตั้งไลบรารี ia32 ตรวจสอบส่วนการแก้ปัญหา Ubuntu Linux

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

5
ia32-libs จะไม่ติดตั้งบนเครื่องของฉัน ดูคำตอบของ notz ด้านล่าง
Matthew Gilliard

5
สิ่งนี้เหมาะสำหรับเวอร์ชัน Ubuntu เท่านั้นก่อนที่จะให้การสนับสนุน Multiarch แนวทางที่ถูกต้องคือการติดตั้งแพ็คเกจ i386 ที่ถูกต้อง
Jacob

แดกดันว่าคำตอบ "ถูกต้อง" นั้นถูกต้องสำหรับเศษส่วนของเครื่อง 64 บิตที่ใช้ Ubuntu / Gnome เท่านั้น การแยกส่วนของ Linux ชี้ให้เห็นว่าคำตอบที่ "ถูกต้อง" คือคำตอบทั่วไปมากกว่าหรือรวมคำตอบที่ถูกต้องบางส่วนต่อไปนี้ทั้งหมด ฉันชอบคำตอบทั่วไปมากกว่าเนื่องจากมีรูปแบบและการอัปเดตที่เป็นไปได้มากเกินไปเพื่อให้แน่ใจว่าสมบูรณ์และไม่ล้าสมัย การโหวตของฉันจะดีสำหรับ "ใช่มันเป็นไปได้ RTFM และติดตั้งแพ็คเกจ 32 บิต / i386" คำตอบที่เป็นกลางสำหรับผู้ขาย FYI - พวกเขาจะไม่แก้ไขเพราะต้องการให้เราใช้ Android Studio แทน
Sinthia V

ไม่มีส่วนการแก้ไขปัญหาในลิงค์นี้อีกต่อไปซึ่งจะไปที่คำแนะนำในการติดตั้งปัจจุบัน: developer.android.com/studio/install.htmlเลือก 'linux' ที่ช่องเลือกแพลตฟอร์มด้านขวาบน
amotzg

182

บน (K) Ubuntu คุณต้องมีแพ็คเกจ 32 บิตต่อไปนี้:

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

สำหรับการเรียกใช้โปรแกรมจำลองคุณต้องมีแพ็คเกจเพิ่มเติมนั้น:

sudo apt-get install libsdl1.2debian:i386

12
ขอบคุณมากสำหรับคำตอบนี้คุณช่วยคอมพิวเตอร์ของฉันจากการติดตั้ง ia32-libs (แนะนำทุกที่) ซึ่งพร้อมกับแพ็คเกจที่คุณกล่าวถึงนำมาซึ่งการพึ่งพาที่ไร้ประโยชน์อื่น ๆ โซลูชันของคุณใช้ได้กับ Linux Mint 13 ของฉัน
pavel_kazlou

เห็นด้วยกับผู้แสดงความคิดเห็นด้านบน Ubuntu 12.04 64bit
Matthew Gilliard

4
ทำงานสำหรับ Ubuntu 12.10 64 บิตของฉัน ขอบคุณมาก!

1
Ubuntu 13.04 64 บิตยังคงมีปัญหาเดียวกันกับ ADT SDK และวิธีนี้ก็ใช้ได้กับฉันเช่นกัน
GrandOpener

2
ใช้ได้กับ Ubuntu 14.04 64bit ด้วย ขอบคุณมาก ๆ!
Langley

34

Android SDK ต้องการ:

  • Fedora 17 64 บิตพร้อม Android SDK:

    sudo yum install glibc.i686 zlib.i686 libstdc++.i686 ncurses-libs.i686
    
  • Fedora 20 64 บิตพร้อม Android SDK

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

1
ขอบคุณสำหรับข้อมูลเฉพาะของ fedora ความช่วยเหลืออย่างเป็นทางการมีเฉพาะแพ็คเกจอูบุนตูในรายการ
gspatel

2
เมื่อฉันลองครั้งแรกฉันได้รับ "Error: Protected multilib versions: libstdc ++ - 4.7.2-2.fc17.i686! = libstdc ++ - 4.7.0-5.fc17.x86_64" แก้ไขด้วยการอัพเกรด yum libstdc ++
pinoyyid

1
บรรทัดคำสั่งที่ใช้สำหรับ fedora 17 ยังคงใช้งานได้กับ fedora 21
Sombriks

@MariuszS ในสถานการณ์ที่สองนั้นคุณช่วยอธิบายความหมายของ "64 บิต Android SDK" ได้ไหม ความเข้าใจของฉันคือ Android SDK มีไบนารี 32 บิตซึ่งเป็นสาเหตุที่เรามีปัญหานี้ตั้งแต่แรก
Carlos Macasaet

ฉันไม่แน่ใจ แต่อาจจะมีสองเวอร์ชันที่ผ่านมา (อาจรวมกับ eclipse 64bit) ตอบอัปเดต
MariuszS

15

สำหรับDebian Wheezyคุณต้องเปิดใช้งานmultiarchจากนั้นติดตั้งไลบรารีที่พึ่งพาตามที่ระบุไว้ในคำตอบอื่น ๆ หรือตามที่ไบนารีต้องการจากไดเร็กทอรี tools หรือ platform-tools:

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

สำหรับ libs เพิ่มเติมให้ตรวจสอบกับ ldd สำหรับไฟล์. so-files ที่อ้างถึง

แพลตฟอร์มเครื่องมือ $ 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 Debug Bridge เวอร์ชัน 1.0.31
...

ขอบคุณ @ user2255304! สิ่งนี้ได้ผลสำหรับฉัน กำลังพยายามติดตั้ง Android Studio และandroid-studio/sdk/tools/mksdcardปฏิบัติการได้ 32 บิต ทำตามขั้นตอนข้างต้นและการติดตั้งและlibc6:i386 libstdc++6:i386ขณะนี้ไบนารีทำงานได้ดี
Rajkumar S

9

สำหรับ Ubuntu 13.1 ia32-libs ไม่สามารถใช้งานได้อีกต่อไป ดังนั้นคุณสามารถลองสิ่งนี้:

sudo apt-get install lib32z1 lib32ncurses5 lib32stdc++6

ชื่อแพ็คเกจเหล่านี้ใช้ได้กับ Ubuntu 14.04 ด้วย ดูเหมือนว่าฉันจะเป็นแนวทางที่ 'ถูกต้อง' เนื่องจากแพ็คเกจเหล่านี้มาจาก repo สถาปัตยกรรม amd64 ความคิดเห็นก่อนหน้านี้แนะนำให้ติดตั้ง: แพ็คเกจ 386 ผสมแพ็คเกจสถาปัตยกรรมซึ่งดูมีความเสี่ยง
Don Park

@DonPark ไม่ก็ไม่เสี่ยง เรียกว่า multiarch
Léo Lam

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 ด้วย!
Philippe David


4

สำหรับผู้ที่ใช้ Slackware คลิกที่นี่

ฉันลองใช้กับปัจจุบันและใช้งานได้

ในระยะสั้นคุณต้องเปิดใช้งานการรองรับ 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"

รีสตาร์ทระบบและ voila




0

คุณสามารถสร้าง sdk ด้วยตัวคุณเอง ฉันจะพยายาม. เวอร์ชัน 32 บิตช้ามาก


0

ข้อสันนิษฐาน: ติดตั้ง Android SDK เวอร์ชัน 32 บิตแล้ว

บน Ubuntu 12 64 บิต OS ของฉันฉันไม่จำเป็นต้องติดตั้งแพ็คเกจใด ๆ ที่กล่าวถึงในความคิดเห็นก่อนหน้านี้ ติดตั้งสิ่งต่อไปนี้โดยใช้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

การบิดเล็กน้อยใน Q และ A ข้างต้น: ฉันใช้ Debian Wheezy (7.0) บนแล็ปท็อป System76 64 บิตฉันได้เปิดใช้งาน multiarch แล้วและเครื่องมือ Android ดั้งเดิมส่วนใหญ่ดูเหมือนจะทำงานได้ดี ... จนกระทั่งฉันลองสร้าง แอป การสร้างล้มเหลวเนื่องจากหนึ่งในยูทิลิตี้ทรัพยากรที่จำเป็น (32 บิต) libz.so.1

apt-get ติดตั้ง lib32z1

... แก้ไขให้ฉัน



0

สำหรับผู้ใช้ Arch:
คุณต้องติดตั้งแพ็กเกจ lib32-gcc-libs และ lib32-ncurses ซึ่งอยู่ในที่เก็บ Multilib (ซึ่งคุณต้องเปิดใช้งาน )

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

1
"ไม่พบแพ็คเกจ"
funganthrax
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.