当前位置: 首页 > 知识库问答 >
问题:

Mac和“恐慌:缺少”ARM“CPU的模拟器引擎程序。”

祝俊雄
2023-03-14

我正在尝试在Galaxy Nexus上运行我为API 16创建的AVD:

emulator @Galaxy_Nexus_Jelly_Bean_API_16

这会给出错误

恐慌:缺少“ARM”CPU的模拟器引擎程序。

我看过其他有类似问题的帖子。大多数人认为Windows上的Avast导致了这个问题。我在Mac上运行。我没有安装Avast。

AVD具有以下配置:

Name: Galaxy_Nexus_Jelly_Bean_API_16
CPU/ABI: Google APIs ARM (armeabi-v7a)
Path: /Users/prisoner/.android/avd/Galaxy_Nexus_API_16.avd
Target: google_apis [Google APIs] (API level 16)
Skin: galaxy_nexus
SD Card: 100 MB
hw.dPad: no
hw.lcd.height: 1280
runtime.network.speed: full
hw.accelerometer: yes
hw.device.name: Galaxy Nexus
vm.heapSize: 80
skin.dynamic: yes
hw.device.manufacturer: Google
hw.lcd.width: 720
hw.gps: yes
hw.initialOrientation: Portrait
image.androidVersion.api: 16
hw.audioInput: yes
image.sysdir.1: add-ons/addon-google_apis-google-16/images/armeabi-v7a/
hw.cpu.model: cortex-a8
tag.id: google_apis
showDeviceFrame: yes
hw.camera.back: virtualscene
hw.mainKeys: no
AvdId: Galaxy_Nexus_Jelly_Bean_API_16
hw.camera.front: emulated
hw.lcd.density: 320
avd.ini.displayname: Galaxy Nexus Jelly Bean API 16
hw.arc: false
hw.gpu.mode: auto
hw.device.hash2: MD5:5c288d27461585ecc73a535555e7cf61
hw.ramSize: 1024
hw.trackBall: no
PlayStore.enabled: false
fastboot.forceColdBoot: no
hw.battery: yes
hw.cpu.ncore: 4
hw.sdCard: no
tag.display: Google APIs
runtime.network.latency: none
hw.keyboard: yes
hw.sensors.proximity: yes
disk.dataPartition.size: 800M
hw.sensors.orientation: yes
avd.ini.encoding: UTF-8
hw.gpu.enabled: yes

Android Studio环境:

Android Studio 3.1.4
Build #AI-173.4907809, built on July 23, 2018
JRE: 1.8.0_152-release-1024-b01 x86_64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
Mac OS X 10.12.6

Mulan:~ prisoner$ echo $ANDROID_HOME
/Users/prisoner/Library/Android/sdk
Mulan:~ prisoner$ which emulator
/Users/prisoner/Library/Android/sdk/tools/emulator

据我所知,仿真器和特定于体系结构的仿真器也在android_home下:

我不知道还有什么地方可以找,要么是错误消息,要么是系统找不到的模拟器,要么是解决问题的其他方法。

更新1:显式指定路径。

尝试显式指定路径也不起作用:

Mulan:~ prisoner$ /Users/prisoner/Library/Android/sdk/tools/emulator @Galaxy_Nexus_Jelly_Bean_API_16
PANIC: Missing emulator engine program for 'arm' CPU.
Mulan:~ prisoner$ /Users/prisoner/Library/Android/sdk/emulator/emulator @Galaxy_Nexus_Jelly_Bean_API_16
emulator: ERROR: This AVD's configuration is missing a kernel file! Please ensure the file "kernel-qemu" is in the same location as your system image.
emulator: ERROR: ANDROID_SDK_ROOT is undefined

果然,未定义android_sdk_root。将其定义为与android_home相同的内容会执行以下操作:

Mulan:~ prisoner$ export ANDROID_SDK_ROOT="$ANDROID_HOME"
Mulan:~ prisoner$ /Users/prisoner/Library/Android/sdk/emulator/emulator @Galaxy_Nexus_Jelly_Bean_API_16
emulator: ERROR: This AVD's configuration is missing a kernel file! Please ensure the file "kernel-qemu" is in the same location as your system image.
emulator: ERROR: ANDROID_SDK_ROOT is defined (/Users/prisoner/Library/Android/sdk) but cannot find kernel file in /Users/prisoner/Library/Android/sdk/system-images/ sub directories

system-images目录下,我们看到每个API平台的目录:

Mulan:~ prisoner$ ls ~/Library/Android/sdk/system-images/
android-16  android-19  android-23  android-26
android-17  android-21  android-24  android-27
android-18  android-22  android-25  android-28
./default
./default/armeabi-v7a
./default/armeabi-v7a/build.prop
./default/armeabi-v7a/kernel-qemu
./default/armeabi-v7a/NOTICE.txt
./default/armeabi-v7a/package.xml
./default/armeabi-v7a/ramdisk.img
./default/armeabi-v7a/source.properties
./default/armeabi-v7a/system.img
./default/armeabi-v7a/userdata.img
./default/mips
./default/mips/build.prop
./default/mips/kernel-qemu
./default/mips/NOTICE.txt
./default/mips/package.xml
./default/mips/ramdisk.img
./default/mips/source.properties
./default/mips/system.img
./default/mips/userdata.img
./default/x86
./default/x86/build.prop
./default/x86/kernel-qemu
./default/x86/kernel-ranchu
./default/x86/NOTICE.txt
./default/x86/package.xml
./default/x86/ramdisk.img
./default/x86/source.properties
./default/x86/system.img
./default/x86/userdata.img
./google_apis
./google_apis/x86
./google_apis/x86/advancedFeatures.ini
./google_apis/x86/build.prop
./google_apis/x86/kernel-qemu
./google_apis/x86/kernel-ranchu
./google_apis/x86/NOTICE.txt
./google_apis/x86/package.xml
./google_apis/x86/ramdisk.img
./google_apis/x86/source.properties
./google_apis/x86/system.img
./google_apis/x86/userdata.img

共有1个答案

司徒浩思
2023-03-14

刚刚在我的Mac上进行了尝试和验证,要解决这个问题,您需要手动指定-kernel路径。即。

$ ~/Library/Android/sdk/emulator/emulator  @Galaxy_Nexus_Jelly_Bean_API_16 -kernel ~/Library/Android/sdk/system-images/android-16/default/armeabi-v7a/kernel-qemu

为您提供一些参考资料:

>

  • 模拟器错误:此AVD的配置缺少内核文件

  •  类似资料:
    • 我试图在Galaxy Nexus上运行我为API16创建的AVD: 这给出了错误 恐慌:缺少“ARM”CPU的模拟器引擎程序。 我已经在SDK管理器中安装了该版本SDK的所有内容: 我已经安装了最新版本的模拟器。我试过卸载和重新安装它。 环境变量似乎设置正确(它与SDK管理器中的相匹配。程序似乎也是该home环境下的程序: 据我所知,模拟器和特定于体系结构的模拟器也位于之下: 我不知道该去哪里找,

    • 我有这个科尔多瓦应用程序并尝试运行 但它给了我下面的控制台错误 当我从android工作室检查时,一切似乎都已安装。 下面是我的android工作室信息 我的环境变量 我可以从文件夹位置确认我放置的路径存在,有什么帮助吗?

    • 我收到了下面提到的同样的问题link.But这个问题被搁置了,我仍在寻求解决办法。https://stackoverflow.com/questions/27146511/panic-missing-emulator-engine-program-for-arm-cpus-eclipse 所以我想在这里提出这个问题。直到昨天,模拟器都工作正常。但是从今天开始,我在尝试打开模拟器时收到以下错误。 这

    • 以前一切都很正常,但现在当我启动模拟器时,我得到的错误是 恐慌:缺少“arm”CPU的仿真器引擎程序。 这是屏幕截图 我尝试更新sdk管理器,但没有什么要更新的。 额外的一切都安装好了,但是我想这个包裹里缺少了一些东西,但是我不知道如何安装那个。任何建议都将不胜感激。提前感谢。 我还卸载了android sdk工具并重新安装它,但仍然没有运气

    • 我试图运行一个Android模拟器使用AVD管理器。这是我的AVD:http://image-upload.de/image/fnx79v/52b0d050ee.png 这就是开始时发生的事情: http://image-upload.de/image/vgpqfa/e912d83939.png 我有一台Macbook Pro视网膜。直接从intel页面安装了Haxm驱动程序。 没有仿真程序在工作

    • 从Eclipse内部启动android模拟器时遇到问题。我得到错误:Panic:缺少“x86_64”CPU的仿真器引擎程序 我可以从命令行启动模拟器: ./emulator64-x86@nexus5_21 我正在使用ADT捆绑的Eclipse。 我尝试在我的配置文件中设置导出LD_LIBRARY_PATH(找到另一篇文章建议)导出LD_LIBRARY_PATH=/users/lindkris/do