Missing emulator engine program for x86 cpu windows

Решение ошибки: пропущенная программа Emulator Engine для процессора x86., Русские Блоги, лучший сайт для обмена техническими статьями программиста.

Фоновое введение

Я использую относительно новый Android SDK, устанавливаю его на D -диск, а затем сохраняю устройство AVD на дисков D, установив переменную среды. Я запускаю симулятор в IDE. Когда я запускаю устройство через команду эмулятора о CMD, будет сообщена ошибкаPANIC: Missing emulator engine program for 'x86' CPU.

Причина объяснения

Я также видел эту причину, по которой я также видел Stackoverflow, то есть старая версия Android SDK использует исполняемую программу эмулятора в папке инструментов, поэтому то, что вы видите в Интернете, для настройки этих инструментов в переменные среды. Новая версия. Использовать исполняемую программу эмулятора в папке эмулятора, поэтому мы должны были настроить эту папку в переменную среды, или мы можем ввести эту папку

К сожалению, для новой версии Android SDK используется программа выполнения под эмулятором, я не нашел небольшого официального объявления

Объяснение этой проблемы Stackoverflow, которое я поместил здесь:https://stackoverflow.com/questions/51606128/windows-emulator-exe-panic-missing-emulator-engine-program-for-x86-cpu/51627009#51627009

Решение

Вы также можете настроить папку эмулятора в переменные среды. Обратите внимание, что переменные среды перемещаются на инструменты, или вы можете напрямую удалить переменную среды инструментов, потому что переменные среды Windows очень похожи на порядок зависимости выполнения Maven. Программа выполнения, сначала обнаруженная, ее можно выполнить и игнорировать то же имя после следующего

После большого количества поисков я не могу решить эту ошибку при запуске:

ionc cordova run android -ls

Выход:

ANDROID_HOME=/Users/lucianokrebs/Library/Android/sdk
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_161.jdk/Contents/Home
No target specified and no devices found, deploying to emulator        
No emulator specified, defaulting to Nexus_5_API_P

Waiting for emulator to start...

PANIC: Missing emulator engine program for 'x86' CPU.

И эмулятор никогда не запускается

Кроме того, когда я бегу:

$ ${ANDROID_SDK_ROOT}/tools/emulator -avd my-custom-avd

Я получил: PANIC: Missing emulator engine program for 'x86' CPU.

Но когда я бегу:

$ ${ANDROID_SDK_ROOT}/emulator/emulator -avd my-custom-avd

Эмулятор запускается и работает нормально

Кажется, что cordova устанавливает неправильный путь при попытке запустить эмулятор. Кто-то уже имел дело с этим?

ionic info:
    cli packages: (/usr/local/lib/node_modules)
    @ionic/cli-utils  : 1.19.2
    ionic (Ionic CLI) : 3.20.0

global packages:

    cordova (Cordova CLI) : 8.0.0 

local packages:

    @ionic/app-scripts : 3.1.8
    Cordova Platforms  : android 7.0.0 ios 4.5.4
    Ionic Framework    : ionic-angular 3.9.2

System:

    Node  : v8.9.4
    npm   : 5.6.0 
    OS    : macOS High Sierra
    Xcode : Xcode 9.3 Build version 9E145 

Environment Variables:

    ANDROID_HOME : not set

Misc:

    backend : pro

P.s: когда я запускаю ionic cordova build android, он тоже работает нормально

8 ответов

Лучший ответ

С версии инструментов SDK 25.3.0 и далее эмулятор был удален и переехал в ../sdk/emulator.

Просто установите ${ANDROID_SDK_ROOT}/emulator в свою переменную $Path, чтобы emulator вызывался из командной строки, и ionic cordova обнаружит эмулятор.


17

Suraj Rao
2 Апр 2018 в 06:33

Кажется, что приведенные выше ответы сработали для вас, и это здорово, но для всех, кто все еще сталкивается с ошибкой, обязательно проверьте, какой образ системы использует ваше виртуальное устройство Android (вы можете проверить на Android Studio в столбце «API» в AVD список).

Убедитесь, что вы не используете ничего слишком нового, я пробовал использовать 28 и 27, и ни один не работал, но 26 (Android Oreo 8.0) сделал


9

Nicholas Xie
23 Май 2018 в 14:50

У меня была такая же проблема, но добавление «sdk / emulator» в мой PATH (я на Windows) не работало. Причина была в том, что и папки инструментов, и папки эмулятора содержали файл emulator.exe. В переменной PATH я переместил папку «sdk / emulator» вверх, перед папкой «sdk / tools», чтобы она сначала проверялась при поиске emulator.exe, и это решило мою проблему.


1

Clement Peronneaud
6 Ноя 2019 в 06:46

Я перепробовал многие из этих вещей, и хотя это может быть решением не для всех, я уверен, что пользователи Windows могут найти его полезным … Я решил начать все сначала и запустил одну из примеров обучающих программ для Kotlin. В инструкции приведена настройка Android Studio. Я закончил с различными ошибками, которые привели к решению ниже.

https://codelabs.developers.google.com/codelabs/build-your-first-android-app-kotlin/index.html#1

Проблема связана с HAXM. Пока он установлен в диспетчере SDK, вы должны запустить программу Intel, которая находится в папке SDK, чтобы получить к ней полный доступ. Перейдите к:

C:UsersusernameAppDataLocalAndroidSdkextrasintelHardware_Accelerated_Execution_Manager 

И щелкните правой кнопкой мыши, запустите от имени администратора, файл intelhaxm-android.exe ИСПРАВЛЕНО …

Простое решение — сначала запустить эмулятор Android из AVD Manager, а затем запустить приложение на Android с помощью «cordova run android». Также убедитесь, что для ANDROID_SDK_ROOT указан путь, указанный в Android SDK Manager (вы можете проверить его с помощью Android Studio).


0

vikram singh
23 Фев 2020 в 17:13

Для пользователей Windows:

1 — Добавьте это в переменную PATH C: Users NameUserAccount AppData Local Android Sdk emulator

2 — Перезагрузите Windows.


0

Álvaro Blázquez Sarabia
6 Май 2019 в 17:47

У меня была такая же ошибка

По сути, ответ @Suraj Rao правильный, но с этими изменениями мой эмулятор не запускается с ionic cordova emulate android . Я изменил также в переменной среды, в моем $ path это

${ANDROID_SDK_ROOT}toolsbin

За это

${ANDROID_SDK_ROOT}emulatorbin

Я закрыл cmd и снова открыл. Тогда Ионная Кордова эмулирует Android работает нормально!


0

Suraj Rao
26 Сен 2018 в 15:48

Для пользователей Windows:

Просто добавьте это в переменную PATH

C:UserslenovoAppDataLocalAndroidSdkemulator


3

adiga
21 Мар 2019 в 07:50

Я пытаюсь запустить эмулятор Android с помощью AVD Manager.
это мой avd:
http://image-upload.de/image/fnx79V/52b0d050ee.png

и это то, что происходит, начиная:

http://image-upload.de/image/vGpQfa/e912d83939.png

у меня есть MacBook Pro Retina. Установлен драйвер Haxm непосредственно со страницы intel.

эмулятор не работает. Все то же сообщение «Ошибка».

Запуск Команды (Эта ошибка была, когда я использовал Homebrew для установки Android-sdk и Android-platform-tools | любой, кто получает ту же проблему, должен удалить это или посмотреть, где конфликт)

export ANDROID_EMULATOR_DEBUG=1 test20

emulator:Found AVD name 'test20'
emulator:Found AVD target architecture: x86
emulator:Looking for emulator-x86 to emulate 'x86' CPU
emulator:Probing program: ./emulator-x86
emulator:Probing path for: emulator-x86
emulator:Found target-specific emulator binary: /usr/local/bin/emulator-x86
emulator:Probing for: /usr/local/bin/libOpenglRender.dylib
emulator:Probing for: /usr/local/bin/lib/libOpenglRender.dylib
emulator:Probing for: /usr/local/lib/libOpenglRender.dylib
emulator:Probing for: /usr/local/bin/lib64OpenglRender.dylib
emulator:Probing for: /usr/local/bin/lib/lib64OpenglRender.dylib
emulator:Probing for: /usr/local/lib/lib64OpenglRender.dylib
emulator:Could not find OpenGLES emulation host libraries!
emulator: ERROR: This AVD's configuration is missing a kernel file!!

emulator -avd test21
emulator:Found AVD name 'test21'
emulator:Found AVD target architecture: x86_64
emulator:Looking for emulator backend for x86_64 CPU
emulator:Probing program: ./emulator-x86_64
emulator:Probing path for: emulator-x86_64
emulator:Looking for emulator-x86 to emulate 'x86_64' CPU
emulator:Probing program: ./emulator-x86
emulator:Probing path for: emulator-x86
PANIC: Missing emulator engine program for 'x86_64' CPUS.

после того, как я исправил проблему с Homebrew:

я попробовал немного вокруг и нашел это:

emulator64-x86 -avd test20
Creating filesystem with parameters:
    Size: 69206016
    Block size: 4096
    Blocks per group: 32768
    Inodes per group: 4224
    Inode size: 256
    Journal blocks: 1024
    Label: 
    Blocks: 16896
    Block groups: 1
    Reserved block group size: 7
Created filesystem with 11/4224 inodes and 1302/16896 blocks
emulator: ERROR: Could not load OpenGLES emulation library: dlopen(lib64OpenglRender.dylib, 1): image not found
emulator: WARNING: Could not initialize OpenglES emulation, using software renderer.
HAX is working and emulator runs in fast virt mode
qemu: could not load PC BIOS 'bios.bin'

для всех, кто имеет такую же проблему, возможно, эти шаги помогут:

запустить эмулятор в режиме отладки:

export ANDROID_EMULATOR_DEBUG=1 emulatorName

если есть путь, который выглядит странно проверьте наличие других установок, таких как Homebrew и удалите конфликт (удалите один)

если библиотека отсутствует, вам нужно экспортировать переменную:

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ANDROID_HOME/tools/lib

и когда ошибка » qemu: не удалось загрузить bios ПК BIOS.bin ‘» появляется, одно исправление-запустить эмулятор с полным путем:

/Applications/Android Studio.app/sdk/tools/emulator64-x86 -avd test20
In your case it is maybe a other path.

16 ответов


для меня работала следующая работа по запуску эмулятора-x86:

cd $SDK/tools; 
ln -s emulator64-x86 emulator-x86

или на Windows Win + X > Командная Строка (Admin)

cd %ANDROID_SDK_ROOT%tools
mklink emulator64-x86.exe emulator-x86.exe

и теперь эмулятор начнется с менеджера SDK.

Примечание: эмуляторы расположенная в в более поздних версиях.


если вы используете macOS, добавьте оба Android SDK emulator и tools каталоги по пути:

Шаг 1: в моем случае порядок был важен, во-первых emulator а то tools.

export ANDROID_SDK=$HOME/Library/Android/sdk
export PATH=$ANDROID_SDK/emulator:$ANDROID_SDK/tools:$PATH

Шаг 2: перезагрузить вы .bash_profile или .bashrc в зависимости от ОС

Шаг 3: получить список доступных эмуляторов:
$emulator -list-avds

Шаг 4: запустить эмулятор из командной строки и Заменить avd С именем вашего эмулятора $emulator @avd

не забудьте добавить @ символ.

это было протестировано с macOS High Sierra 10.13.4 и Android Studio 3.1.2.


перейдите к папке эмулятора, расположенной в Android SDK folder / emulator

cd ${ANDROID_HOME}/emulator

затем введите эту команду, чтобы открыть эмулятор без Android studio:

— — —

$ ./ эмулятор-list-avds

$ ./ эмулятор-avd Nexus_5X_API_28_x86

[Nexus_5X_API_28_x86] мой AVD [вам нужно дать свое имя AVD]

12

автор: abinthomas12914


попробуйте выполнить следующую работу для запуска эмулятора-x86:

export LD_LIBRARY_PATH=$SDK/tools/lib:$LD_LIBRARY_PATH
$SDK/tools/emulator-x86 <your-other-options>

где $SDK-это путь к вашей установке SDK. Это в двух словах то, что пытается сделать «эмулятор». Возможно,вы захотите запустить emulator64-x86 вместо emulator-x86, если первый существует.


имел ту же проблему на Windows7 64bit. Причина, почему он не пропал emulator-x86.exe файл под sdk / tools. Исправлено путем удаления Android SDK Tools с помощью Android SDK Manager и установки его снова. Файл теперь существует, и эмулятор работает так, как ожидалось.


Avast Antivirus воспринимает эмулятор-arm.exe как поток и блокировка по некоторым причинам. Когда вы добавляете исключения на странице Virus Chest с правой кнопкой мыши — > «восстановить и добавить к исключениям», это не решается в будущих запусках. Чтобы решить это навсегда в Avast 2015:

настройки—>

Активная Защита ->

Экран Файловой Системы ->

настроить ->

исключения затем добавить поток в качестве исключения . А затем нажмите ладно.


Для Windows 10, 5.29.18:

используя команду promt я только что попал в каталог эмулятора:
компакт-диск C:Androidsdkemulator ,
а потом набрал команду:
эмулятор-avd Nexus_S_API_27
(кстати, Nexus_S_API_27is имя моего пользовательского эмулятора )).

Othewize он будет злоупотреблять :
PANIC: отсутствует программа Emulator engine для процессора x86.
).



есть два имени emulator двоичный файл. который находится под $SDK / tools / emulator другой под $SDK / emulator/

  • пожалуйста, убедитесь, что у вас есть правильная настройка эмулятора (нужно добавить $SDK/emulator в U env PATH

Я написал скрипт, который поможет мне вызвать список avd

#!/bin/bash -e


echo "--- $# $(PWD)"
HOME_CURRENT=$(PWD)
HOME_EMULATOR=/Users/pcao/Library/Android/sdk/emulator

if [ "$#" -eq 0 ]
then
    echo "ERROR pls try avd 23 or avd 28 " 
fi

if [ "" = "23" ]
then
    echo "enter 23"
    cd $HOME_EMULATOR
    ./emulator -avd Nexus_5_API_23_Android6_ &
    cd $HOME_CURRENT
fi

if [ "" = "28" ]
then
    echo "enter 28"
    cd $HOME_EMULATOR
    ./emulator -avd Nexus_5_API_28_GooglePlay_ &
    cd $HOME_CURRENT
fi

на Mac после установки Android Studio IDE android-studio-ide-173.4907809-mac.dmg и использование studio SDK Manager для установки SDK Tools

enter image description here

добавить в свой путь с помощью ~/.profile или ~/.bash_profile и $ANDROID_HOME/emulator в своем $PATH до $ANDROID_HOME/tools вот так:

export ANDROID_HOME=$HOME/Library/Android/sdk
export PATH=$PATH:$ANDROID_HOME/emulator
export PATH=$PATH:$ANDROID_HOME/tools
export PATH=$PATH:$ANDROID_HOME/tools/bin
export PATH=$PATH:$ANDROID_HOME/platform-tools

alias androidemulator='emulator -avd Nexus_5X_API_28_x86'

вы не можете запустить каталог emulator-x86, потому что он должен иметь настройку LD_LIBRARY_PATH специально для поиска библиотек эмуляции Bios и GPU для ПК (поэтому существует «эмулятор», он изменяет путь, затем вызывает emulator-x86).

вы обновили первый выход ? Похоже, «эмулятор» все еще находит «/ usr / local/bin / emulator-x86»


удалите оба Android SDK Tools и Android SDK PLatform-tools; затем загрузите оба пакета снова. Теперь создайте новый эмулятор и запустите его; он будет работать. Возможно, вы сможете запустить ваши старые эмуляторы.


у меня была эта проблема после обновления Android Studio до 3.2 и даже обновления некоторых SDK-пакетов.

причиной было то, что путь к эмулятору изменилось, поэтому не используйте ...../Android/Sdk/tools/emulator но вместо ....../Android/Sdk/emulator/emulator.


это сообщение означает, что программа «emulator-x86» или «emulator64-x86» отсутствует в $SDK/tools/ или не может быть найдена по какой-либо причине.

прежде всего, вы уверены, что у вас есть действительная загрузка / установка SDK?


увидеть, если ваш .exe-файл находится в вашем антивирусном карантине

решение :
1-Загрузите ADT-bundle снова изhttps://developer.android.com/tools/sdk.
2-Откройте Zip-файл.
3 — скопировать недостающие .exe файлы из папки «sdktools».
4-мимо скопированных файлов в каталоге «Androidsdktools».


это сработало для меня на macOS:

echo 'export PATH=$PATH:'$HOME'/Library/Android/sdk/emulator:'$HOME'/Library/Android/sdk/tools:'$HOME'/Library/Android/sdk/platform-tools' >> ~/.bash_profile
source ~/.bash_profile

@devoncarew A couple more things I found that seemed to help. Details in case anyone else stumbles on this thread and they might help.

  1. Revised what I had above and added just following global envir vars…

Added to Path:
C:Usersmy_userAppDataLocalflutterbin
C:Usersmy_userAppDataLocalAndroidSdkplatform-tools
C:Usersmy_userAppDataLocalAndroidSdktools
C:Usersmy_userAppDataLocalAndroidSdktoolsbin

New Envir Vars:
ANDROID_AVD_HOME: C:Usersmy_user.androidavd
ANDROID_EMULATOR_HOME: C:Usersmy_user.android
ANDROID_SDK_ROOT: C:Usersmy_userAppDataLocalAndroidSdk

  1. This next bit seemed to make more of a difference
    .
    I noticed that the global vars did not seem to get picked up by IntelliJ.
    So in the generic settings of IntelliJ I added the following three vars same as in my system’s envir.
    generic settings 1
    generic settings 2

Then in the specific project structure settings, I set the JDK SDK loc and the Android SDK loc as these did not seem to get picked up any other way. Like so…
project specific settings 1
project specific settings 2

After this, at least on my Windows 10 box with only 64 bit apps, the AVD images started to work.
That’s the fresh ones as @geekrumper says, and not the default ones.

Although I did get the settings for my new pixel 2 xl image from the ones in Android Studio.

Interestingly after I made these changes I could open both x86_64 AND x86 bit AVD images.
Now this is never from that little dropdown. This is by starting the AVD Manager and starting the image from there.

So not from here (it always produced error):
image start 1

But from here, I would pick an image and start it:
image start 1

And then once the image was started, it interacted just fine with IntelliJ.

Then in the project structure specific settings I checked and added the following.
JDK path and the Android SDK path. First JDK then Android SDK.

Issue

On macOS Catalina 10.15.5, Android Studio 4.1.2, I try to start the emulator from the command line.

% ~/Library/Android/sdk/tools/emulator -list-avds
Pixel_XL_API_30
% ~/Library/Android/sdk/tools/emulator -avd Pixel_XL_API_30
PANIC: Missing emulator engine program for 'x86' CPU.

But I get an error saying PANIC: Missing emulator engine program for 'x86' CPU.

Solution

The cause was that the path to emulator had changed, so don’t use ...../Android/Sdk/tools/emulator but instead ....../Android/Sdk/emulator/emulator.

Refer to the User guide: Start the emulator from the command line.

% ~/Library/Android/sdk/emulator/emulator -avd Pixel_XL_API_30

You can set the environment variable through your user settings in the operating system, for example, in your .bashrc file on Linux, or .zshrc on macOS.

export PATH="$HOME/Library/Android/sdk/emulator:$PATH"

Restart the terminal, or after running source ~/.zshrc, just use emulator directly.

% emulator -avd Pixel_XL_API_30

Понравилась статья? Поделить с друзьями:
  • Misery gunslinger не запускается windows 10
  • Mirrors edge скачать торрент для windows 10
  • Mirrors edge вылетает при запуске windows 10
  • Mirroring360 скачать для windows с активацией торрент
  • Mirror s edge не запускается на windows 10