Mark
Mark

Reputation: 1144

Do x86 Android AVD's work on Linux on AMD?

I know that you cannot run the x86 images on Windows on AMD. I am trying to see if I can run them on Linux though as the documentation implies. I installed Ubuntu 1704. I installed the latest Android Studio 2.3.3. I created a default AVD for API 25 on x86.

I have also installed the following packages:

cpu-checker
lib32ncurses5
lib32z1
gcc-multilib
nvidia-current

I have an AMD Phenom II 1045T:

vendor_id   : AuthenticAMD
cpu family  : 16
model       : 10
model name  : AMD Phenom(tm) II X6 1045T Processor
stepping    : 0
microcode   : 0x10000bf
cpu MHz     : 2000.000
cache size  : 512 KB
physical id : 0
siblings    : 6
core id     : 5
cpu cores   : 6
apicid      : 5
initial apicid  : 5
fpu     : yes
fpu_exception   : yes
cpuid level : 6
wp      : yes
flags       : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm 3dnowext 3dnow constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf pni monitor cx16 popcnt lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs skinit wdt nodeid_msr cpb hw_pstate vmmcall npt lbrv svm_lock nrip_save pausefilter

I have SVM turned on in my BIOS too.

I verified that KVM is ready:

my-linux:~$ emulator -accel-check
accel:
0
KVM (version 12) is installed and usable.
accel

If I try to run it, I see the following:

my-linux:~$ emulator -avd Nexus_5X_API_25
[140469584095040]:ERROR:./android/qt/qt_setup.cpp:28:Qt library not found at ../emulator/lib64/qt/lib
Could not launch '../emulator/qemu/linux-x86_64/qemu-system-i386': No such file or directory
my-linux:~$ which emulator
/home/me/Android/Sdk/tools/emulator

If I instead try the other emulator binary:

my-linux:~$ /home/me/Android/Sdk/emulator/emulator -avd Nexus_5X_API_25
emulator: WARNING: Host CPU is missing the following feature(s) required for x86 emulation: SSSE3
Hardware-accelerated emulation may not work properly!
emulator: ERROR: GPU emulation is disabled.
Only screen size of 800 X 1280 or smaller is supported when GPU emulation is disabled.
emulator: ERROR: GPU emulation is disabled: software gpu and screen too large
warning: host doesn't support requested feature: CPUID.01H:ECX.ssse3 [bit 9]
warning: host doesn't support requested feature: CPUID.01H:ECX.ssse3 [bit 9]
warning: host doesn't support requested feature: CPUID.01H:ECX.ssse3 [bit 9]

A black screen emulator appears that never seems to actually start.

Do either the x86 or x86-64 images run in accelerated mode on AMD under Ubuntu 17.04 for anyone? Did you have to perform any additional steps or install any additional software?

Oh, here is my env setup:

export ANDROID_HOME=/home/me/Android/Sdk
export PATH=${PATH}:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools

I've googled around a ton on this and most posts I can find deal with trying to run the x86 emulator on Windows on AMD which is not supported and not what I am trying to do.

Upvotes: 3

Views: 9132

Answers (1)

Mark
Mark

Reputation: 1144

It's a bug. x86 API 22 image works just fine and seems accelerated, but not 23+. Others have seen it too:

https://issuetracker.google.com/issues/37076174

Upvotes: 5

Related Questions