AVD öykünücüsünde başlatılamıyor: QT kitaplığı bulunamadı


132

Android Studio'da yeniyim ve emülatörü kullanırken sorun yaşıyorum. Ben çalıştırmak çalıştığınızda söyleyerek çökmesini devam ediyor:

"AVD öykünücüsünde başlatılamıyor" [6816]: HATA: ./ android / qt / qt_setup.cpp: 28: C: \ Users \ Jay \ AppData \ Local \ Android \ Sdk \ emulator \ lib64 \ qt'da Qt kütüphanesi bulunamadı \ lib

'C: \ Users \ Jay \ AppData \ Local \ Android \ Sdk \ emulator / qemu / windows-x86_64 / qemu-system-i386.exe' başlatılamadı: Böyle bir dosya veya dizin yok

VT-x'i BIOS ayarlarından etkinleştirdim, ancak sorunu yaşıyorum. Çok araştırdım ve bir cevap bulamadım. Herhangi bir yardım çok takdir edilecektir. Birisi bana bir çözüm verebilir mi?

Hatanın ekran görüntüsü Günlük Görüntüsü


cevabımı gör. Mükemmel çalıştı.
Uddhav Gautam

Yanıtlar:


157

Bu, son güncellemeyle ilgili bir sorun gibi görünüyor. Geçici bir çözüm, öykünücüyü /path/to/android-sdk/toolskomut satırındaki dizinden başlatmaktır .

Bkz https://code.google.com/p/android/issues/detail?id=235461 sorunu takip etmek.


6
Android / sdk / tools'dan emülatörü çalıştırıyorum ama hala QT hatası alıyorum.
Gonzalo

3
Aynı sorunu yaşadım ve bu çözüm benim için çalışıyor.
17'de gontard

2
Dün itibariyle en son güncellemeler. <Android SDK> / tools dizininden yayınlamak benim için çalıştı, ancak yolumda / tools ve / platform-tools var. Bunu düzeltmeleri gerekir.
Sean Aitken

13
Konu hakkındaki yorum # 25 benim için düzeltildi
Gregriggins36

1
Benim için çalıştı, ancak ek -use-system-libsolarak araçlar dizininde emulatorbulunan bir argüman olarak kullanmak zorunda kaldı .
Rany Albeg Wein

105

"Android Emulator", Android Studio'nun standart yüklemesiyle yüklenmediğinden diğer tüm yanıtlar benim için çalışmadı. Yüklediğinizden emin olun ve gerekirse diğer yanıtları deneyin.resim açıklamasını buraya girin


2
"Android Emulator" uygulamasını yüklemek de benim için düzeltti. Bundan sonra emülatörü tekrar başlatabiliyordum, ancak HAXM hatasını "bilinmeyen hax vcpu dönüş 1" takip ettim. Makinemi yeniden başlatmak nihayet tüm sorunları çözdü. (Bkz: stackoverflow.com/a/41867405/2350644 )
user2350644

2
Android Studio'nun içinden emülatör yüklemek de benim için çalıştı. Şimdi Emulator'u komut satırından da çalıştırabilirim.
abhinavgoyal02

3
Gerçekten teşekkür ederim, 3 saat harcadıktan sonra sorunumu
çözdüm

1
Mac'te emülatör başlatma sorunu yaşadım. Herhangi bir mesaj olmadan başlatmadan sonra çöküyordu. Senin ipucun bana yardımcı oldu.
Rostyslav Roshak

3
Bu da bana yardımcı oldu. Temel olarak, Android Studio'yu yeni yüklememle, güncellemeleri çalıştırdıktan ve ilk kez emülatörde bir görüntü başlatmaya çalıştıktan sonra. Bu hataydı. Ve evet, kullanmak istiyorsanız emülatörün kurulu olması oldukça mantıklı. Android Studio şöyle diyorsa iyi olur: "sağladığımız emülatörde sanal bir cihaz çalıştırmak istiyorsunuz, ancak önce bu emülatörü kurmanız gerekiyor, şimdi yüklemek istiyor musunuz?" ....
morksinaanab

82

Linux veya Mac sistemleri için ~/.profile(veya ~/.bashrc) öğesine aşağıdakileri ekleyebilirsiniz :

function emulator { cd "$(dirname "$(which emulator)")" && ./emulator "$@"; }

ardından değişiklikleri yüklemek için çalıştırın:

source ~/.profile

(veya source ~/.bashrcelbette)

Bu emulator, sorunu çözene kadar yürütmeye izin verecektir

( https://code.google.com/p/android/issues/detail?id=235461 adresindeki#10 yanokwa yoruma göre )


Bunu SDK Tools 25.3.1 ve Ubuntu 16.10 ile denedi ve işe yaramadı, libGL hataları almaya başladı
vallllll

Ben which emulatorosx klasörü bulmak için kullanılan
V-SHY

@vallllll Sadece Mac'te test ettim ancak Linux üzerinde de çalışmalı. Android Studio'da çalışabiliyor musunuz?
J. Costa

7
Zsh whence -pyerine kullanın which. Ayrıca cd ... && ...geçerli kabuktaki dizini değiştirmekten kaçınmak için alt kabukta yürütmek üzere parantez koyun .
mixel

11
@ Mixel'in modifikasyonları ile linux ve zsh üzerinde çalıştığını doğrulayabilirim:function emulator { ( cd "$(dirname "$(whence -p emulator)")" && ./emulator "$@"; ) }
Andy Jones

63

Bu sorunu çözen en son Android Emulator 26.1.2'yi yükledim.

Btw eğer PATH'nizde her ikisine de sahipseniz:

  • C:\AndroidSDK\tools

  • C:\AndroidSDK\emulator

emulatorKomut çalışmıyor araçları klasörünün içinde emulator.exe kullanmaya çalışacaktır.

Bunu PATH'nizde çözmek için C:\AndroidSDK\emulator , araçlar dizininden önceki satıra gitmelisiniz, bu şekilde emülatör yürütülebilir dosyası ilk olarak emülatör klasörünün içinde aranacak ve tools klasöründe bulunandan öncelikli olacaktır

MacOS: Mac'iniz varsa daha ~/Library/Android/sdk/emulatorönce taşıyabilirsiniz ~/Library/Android/sdk/tools


8
emulatordir yolu yola eklemek bana yardımcı oldu
Koen.

14
~ / Library / Android / sdk / emulator'ı daha önce ~ / Library / Android / sdk / tools ekleyerek Mac OS'de de düzeltir
Jacob Wallström

3
Evet, mac OS kullanarak, ben PATH içinde başkalarının önünde emülatörü koymak ve çalışıyor
Aaron Gong

1
Teşekkürler - daha emulatorönce toolsyola ekleme Linux'ta benim için çalıştı.
Vanessa Deagan

Teşekkür ederim, Ortam Değişkenleri yolunu ekledim ve dizildi. Win10. Ayrıca yukarıda belirtildiği gibi, Araçlar'dan önce emülatör girişi.
Francois Muller

20

basit bir çözüm, bu takma adı sizin .bashrc .profileveya eşdeğerinize eklemektir.

alias emu="$ANDROID_HOME/tools/emulator"

Sonra source .bashrcya .profileda sadece basitçe yeni bir terminal açmak

sonunda emülatörünüzü çalıştırmak kadar basit olacak emu -avd name


2
Takma ad için +1, bu da benim için çözdü. ANDROID_HOME olsa tanımlanmış değil, bu yüzden sadece normal yolun yerini aldı. Neden çoğu var gibi görünüyor emin değilim ve ben ... Mac.
TahoeWolverine

12

Zsh kullanıcıları şunları ekleyebilir:

function emulator { ( cd "$(dirname "$(whence -p emulator)")" && ./emulator "$@"; ) }

ile .zshrc(veya .zshenv) arasındadır.

Değiştirilen dosyayı sağlayarak değişiklikleri geçerli kabukta yükle:

source ~/.zshrc

Şimdi emulatorzsh komutunu kullanabilirsiniz .

Cevabı için J. Costa'ya teşekkürler bash.


10

Macbook'ta dün yüklü olan en son Android Studio ile aynı sorunu yaşadım.

Emülatör ikili dosyası sdk / tools klasöründe bulunmasına rağmen, Android Emulator paketi yüklenmedi. Android Studio'da Android Emulator'u seçmek-> Tercihler-> Sistem Ayarları-> Android SDK, emülatör paketini indirip yükleyin.

Emülatör kurulumundan sonra emülatörü başlatabiliyorum.


Bunu yaptıktan sonra Android Studio'yu yeniden başlatmam gerekiyordu.
Adam Johns

Linux için şu adrese gidin:Tools -> Android -> SDK Manager -> SDK Tools -> Activate 'Android Emulator' -> OK
Mitja

Çözüm de benim için çalıştı, @AdamJohns yeniden başlatmadan;)
AamirR

7

Her şeyden önce, Google Sorun İzleyici'deki sorun dizisi zaten çözüldü. Artık ortam değişkenini LD_LIBRARY_PATHgeçici çözüm gibi ayarlamanıza gerek yok . Ancak Android SDK'nızı yükseltmeniz ve SON emulator paketi (ikili dosyalar) kullanmanız gerekir. Buna sahip olmadan, can sıkıcı QThataları görmeye devam edersiniz .

Ardından, bir emülatör başlatmak için gerekli SDK paketlerinin yüklendiğinden emin olmak çok önemlidir. Belirli bir emülatör görüntüsünü kurarken sdkmanager, gerekli bağımlılıkları kontrol etmez veya yüklemenizi istemez. Bir adın hata hakkında şikayet ANDROID_SDK_ROOTgibi, PANIC: Cannot find AVD system path. Please define ANDROID_SDK_ROOTya da PANIC: Broken AVD system path. Check your ANDROID_SDK_ROOT valuetam olarak bu nedenle var.

Öykünücü görüntüsü dışındaki diğer 3 temel bağımlılık şunlardır:

  • platform-tools
  • platforms;android-<api_level>
  • emulator

Yükleyebileceğiniz:

sdkmanager "platform-tools" "platforms;android-<api_level>" "emulator"

api_levelSizin emülatör görüntüdür aynı API seviyesidir.


mhh ben PANIC: Missing emulator engine program for 'x86' CPU.de SDK_ROOTnokta nerede gerekir olsun ? sadece ANDROID_HOME?
kemuri

Ben sadece emulatorşimdi oturur öğrendim sdk/emulatorve araçtan biri bu hataya neden olur.
kemuri

5

Komutu dizinden gerçekleştirirken bile sorunu yaşayanlar .../Sdk/toolsiçin -use-system-libsargümanı eklemeyi deneyin .

Bu yüzden aşağıdaki biçimde olmalıdır:

path/to/Sdk/emulator -use-system-libs -avd [AVD-NAME]

Benim için bir örnek:

/home/cillian/Android/Sdk/emulator -use-system-libs -avd Nexus5


2
benim ubuntu 16.10 bunu test ve çalışan tek şey, sadece emulator -use-system-libs -avd Pixel_XL_API_25 kullanıyorum.
vallllll

5

Aynı sorunu yaşadım ve öykünücüyü yükleyerek çözdüm, çünkü güncellemeler bir şekilde silmiş gibi görünüyor. Bunu Android Studio araçları-> SDK yöneticisinden yapın. Bu yardımcı olur umarım


SDK Yöneticisi'nden emülatörün yeniden yüklenmesi Qt hatasını düzeltti, ancak daha sonra HAX ile ilgili başka bir sorun elde ettim. Mac kullanma.
Gennon

Makinemde Docker'dan çıkılarak HAX sorunu düzeltildi. Öykünücüyü araçlar dizininden başlatmanız gerekir. Ya da yine Qt hatasını alıyorum.
Gennon

4

Windows 10 x64 üzerine Android Studio 2.3.3'ü (bugün 2017-08-01) yükledim

Aynı sorun.

  • Android Studio'dan emülatör yükledim -> Araçlar -> Android -> SDK Yöneticisi -> SDK Araçları -> Android Emulator (sürüm 26.1.2)

  • Kurulumdan sonra ... aynı sorun

  • Emulator klasöründen yolumu araçları yolundan önce ortam değişkenlerime ekledim (yukarıdaki bir cevap gibi) ama yine de aynı sorun.
  • Sonra araçlar klasöründen emulator.exe ve emulator-check.exe sildim ve bu sorun için mi çözüldü


3

Bu sorun, Cordova 7.0.X sürümünde giderilmiş gibi görünüyor

Cordova 6.5.0 sürümünü kullanıyorsanız kolayca düzeltebilirsiniz.

Sorunun kökü, ./platforms/android/cordova/lib/emulator.js adresindeki proje dizininizin kökünde bulunan emulator.js dosyasındadır.

Aşağıdaki satırı güncelleyin, (benim için 205 numaralı satırdı):

.spawn ('emulator', args, {stdio: 'inherit', ayrılmış: true})

için

.spawn ('emulator', args, {stdio: 'inherit', ayrılmış: true, cwd: process.env ['ANDROID_HOME'] + '/ araçlar'})

Bu, karşılaştığınız göreli yol sorununu düzeltir.

Ayrıca, 56. satırda Cordova sürüm 6.5.0 için gerekli ikinci bir düzeltme vardır. Basitçe " avd " tekil yapmak için " avds " kelimesinin çoğul "s" harfini bırakın .


Sadece bunu okuyan diğerlerine eklemek için: SDK'yı demleme nakit yoluyla yeni yüklediyseniz, ANDROID_HOME'u ANDROID_SDK_ROOT ile değiştirmelisiniz (env ANDROID_HOME'u da ayarlamadıysanız)
Lubricin

3

Bu sorunla karşı karşıyaydım

  java.io.IOException: Cannot download 
 'https://dl.google.com/android/repository/emulator-windows-4266726.zip'

Windows 10'da stüdyo 3.0'a güncelledim, öykünücülerim çalışmayı durdurdu.

AndroidStudio'nun 2.0 ve 2.1 gibi önceki kurulum klasörlerini .AndroidStudio3.0 klasörünün yanında kullanıcı adım altında sildi (dokunulmaz).

Herhangi bir şekilde çalışmayı durduran önceden yüklenmiş emülatörleri sildi.

Emulator zip dosyasını yukarıdaki bağlantıdan manuel olarak indirdi. İçeriğini emulator klasörüne yapıştırdı

       C:\Users\myusername\AppData\Local\Android\Sdk\emulator

Yeni bir emülatör oluşturdu ve başlattı Bingo! çalışıyor!!


1
Bağlantıdan indirmedim, ancak Android Studio 3.0'da SDK Yöneticisi'ni kullanarak öykünücüyü güncellediğim hariç, bu benim için nihayet hile yaptı
yvesmancera

3

Bu sorunu çözmek için aşağıdaki adımları izleyin (Windows 10):

  1. Android emülatörünü yüklediyseniz Android stüdyosunda kontrol edin, değilse yükleyin.

  2. Intel x86 Emulator Accelerator'ı (HAXM yükleyici) yüklediyseniz Android stüdyosunda kontrol edin, değilse yükleyin.

  3. Ortam değişkenleri => Sistem değişkenleri "Yol" düzenleyin. Bu satırı emülatör için eklemeniz gerekir: %ANDROID_HOME%\emulatorönce %ANDROID_HOME%\toolsve %ANDROID_HOME%\platform-tools(Üçüncü adım benim için bir çözümdü.)


2

Mac için

Emulators oluşturduysanız, bu kabuk kodunu deneyin:

#!/bin/bash
cd /Users/***/Library/Android/sdk/tools/
avds=`emulator -list-avds`
echo "show All emulators"
i=0
for item in $avds
do
    echo [$i] $item
    let i+=1
done
read index
avds=($avds)
# echo ${avds[$index]}
emulator -avd ${avds[$index]}

*** kullanıcı adınız


2

Android stüdyom Windows işletim sisteminde. ancak bu sayfadaki cevapların çoğu benim için çalışmıyor.

ama bunu kolay bir şekilde anlıyorum.

Android stüdyo IDE'nizde [Sdk yöneticisi] 'ni açın, [Android Emulator] ve [Android SDK tool]' u indirip indirmediğinizi kontrol edin

Onları nasıl kontrol edebilirim?

[SDK Yöneticisi] -> [Görünüm ve davranış] -> [Sistem Ayarı] -> [Android Sdk] -> Burada sekmeler var ve ikincisini seçin [SDK araçları]. ardından [Android Emulator] ve [Android SDK aracı] öğelerini kontrol edin.

Umarım size yardımcı olabilir.

İyi şanslar!


2

Öykünücüyü başlatmak için yola yalnızca aşağıya eklemeniz gerektiğini görüyorum

C:\Users\Ram\AppData\Local\Android\Sdk\platform-tools
C:\Users\Ram\AppData\Local\Android\Sdk\emulator.

Android Studio 3.0 ve üstünü yükledikten sonra C:\Users\Ram\AppData\Local\Android\Sdk\emulator emulator_folder,C:\Users\Ram\AppData\Local\Android\Sdk\tools tools_folder

Tools klasöründe bazı dosyalar eksik, bu nedenle tools klasörünü yoldan kaldırın.

Emülatörünü komut isteminden başlatmak için aşağıdaki emülatör komutlarını kullanabilirsiniz:

emulator -list-avds

emulator @Pixel_2_XL_API_26 - Based on the avd that you have setup

emulator_commands


1

Android emülatörünün yüklenmesi, bu ayar android studio'da varsayılan olarak etkin olmadığından sorunu çözecektir. Android Studio 3+ ve sonraki sürümlerinde, Araçlar -> Android -> SDK Yöneticisi -> SDK Araçları -> Android Emulator altında bulamazsınız ancak Dosya -> Ayarlar -> Görünüm ve Davranış -> Sistem Ayarları -> Android SDK -> SDK Araçları -> Android Emulator


1

Başsız emülatör senaryosu için bu sorunu çözdüm Bu yüzden andrdoid_sdk klasörünü kontrol edersem 2 yürütülebilir emülatör var. Sorun sürümden birinde oturuyor

${ANDROID_HOME}/emulator/emulator
version 29.3.4
no issue

ve ikincisi

${ANDROID_HOME}/tools/emulator
version 26.0.3
QT issue

bu nedenle, özellikle şu adreste belirtildiği gibi başsız emülatöre ihtiyacınız varsa en son emülatör sürümünü kullandığınızdan emin olun: https://androidstudio.googleblog.com/2019/02/emulator-2818-canary.html



0

Ayrıca Android Studio'dan Araçlar> AVD Yöneticisi'ni açabilir ve öykünücüyü manuel olarak başlatabilirsiniz.


Ben OP düşünce oldu Android Studio menüler aracılığıyla başarısız hakkında. Benim için GUI çalışıyor, ancak komut satırını emulator -avd "Nexus_5X_API_27"çalıştıramıyorum.
MarkHu

0

Temel işletim sisteminde hatalar / güncellemeler olabilir. Yani, bunun yerine güncelleme .profile, /etc/environmentya .bashrcnoktasına dosyası adb, emulatorvb koymak (kopya ve yapıştır) tüm emulatoriç klasöre /usr/bindizininde. Bu / usr / bin varsayılan olarak sistem tarafından işaret edilir. adbAleti terminalden takın . Bu her şeyi çözmeli.

Ve / Veya, /etc/bash.bashrcdosyadaki tüm ortam değişkenlerinizi güncelleyin . Şunu unutmayın: /etc/bash.bashrcbash terminalini her açtığınızda dosya yürütülür.


0

Ubuntu x86 görüntüsü çalıştıran bir Docker kapsayıcısı kullanıyorsanız, Docker görüntüsü içinde x86 tabanlı bir öykünücü çalıştırmak mümkün olmayabilir. "Qt library not found"Hatayı veya hatayı alırsınız "Please ensure KVM is properly installed and usable"(daha fazla bilgi burada ).

Bir alternatif, daha yavaş olmalarına rağmen çalıştırılması daha kolay olan ARM tabanlı bir emülatör kullanmaktır:

# Download an ARM emulator image
android-sdk/tools/bin/sdkmanager "system-images;android-24;default;armeabi-v7a"

# Create an ARM-based emulator AVD with 250 MB SD card
avdmanager create avd -n Android_7.0_API_24 -k "system-images;android-24;default;armeabi-v7a" -c 250M --force

# Check the image is properly created and available to run
android-sdk/emulator/emulator -list-avds

# Run the emulator
android-sdk/emulator/emulator -avd Android_7.0_API_24

Daha fazla bilgi: https://medium.com/@AndreSand/android-emulator-on-docker-container-f20c49b129ef


0

Burada daha önce görmediğim, benim için çalışan bir çözüm, bağlantı android-sdk/emulator/emulatorkurmaktır android-sdk/tools/emulator.

Aptal? Genius? benim için çalışıyor.


İşe yaramıyor. Zaten belirtilen konumda dosyam var
Ashok Koyi

0

Ben sadece $ PATH $ ANDROID_SDK_ROOT / emulator ekleyerek düzeltildi.

Android SDK'da neden iki emülatör çalıştırıcısı olduğunu bilmiyorum. 1) $ ANDROID_SDK_ROOT / araçlar 2) $ ANDROID_SDK_ROOT / emülatörde, ancak ikincisi benim için çalıştı.

fish shell~ / .Config / fish / config.fish içinde aşağıdaki satırı ekleyerek kullanıyorum .

set -x ANDROID_SDK_ROOT $HOME/Android/Sdk
set -x JAVA_HOME $HOME/android-studio/jre
set -x PATH $PATH $ANDROID_SDK_ROOT/emulator
set -x PATH $PATH $ANDROID_SDK_ROOT/tools
set -x PATH $PATH $ANDROID_SDK_ROOT/tools/bin
set -x PATH $PATH $ANDROID_SDK_ROOT/platform-tools

0

Bu hatayı çözmeyi başardım. Sistem değişkenimde ayarlamam gerekiyorANDROID_HOME

sistem değişkeni

Kullanıcı değişkenim için her iki yola da ihtiyacım var

C:\Users\tonyhudson\AppData\Local\Android\Sdk\platform-tools
C:\Users\tonyhudson\AppData\Local\Android\Sdk\emulator

Silmeyi unutmayın C:\Users\tonyhudson\AppData\Local\Android\Sdk\toolsçünkü hataya neden olur

kullanıcı değişkeni


0

Android Studio'yu değil yalnızca Android SDK'yı yüklediğinizde. Emülatörün yolunu bulmanız ve tam yolla yürütmeniz gerekir. Örneğin,

/ usr / local / share / android-sdk / tools / emulator @test

Bu, sorununuzu çözmelidir. En azından benim için işe yarayan buydu.



0

Reac-native üzerinde çalışıyorum ve bu sorunla karşı karşıya kaldım, Emulator'u gerçekten sinir bozucu olan cmd'den açamadım çünkü çok zaman alan Android Studio'dan açmak zorunda kaldım.

Bu nedenle, önce Android\Sdk\emulatorklasörde cmd çalıştırarak veya Android\Sdk\toolsbu klasörlerden herhangi birinde çalışıyorsa emülatörü açıp açamayacağınızı kontrol edin, o zaman bu çözüm tam size göre! 😀

benim durumumda her iki klasörde cmd çalışıyordu ama başka bir klasörde açık cmd varsa benim emülatör çalışmaz ve bu hata ile:

[14684]:ERROR:android/android-emu/android/qt/qt_setup.cpp:28:Qt library not found at ..\emulator\lib64\qt\lib
Could not launch 'C:\Users\Shehr\AppData\Local\..\emulator\qemu\windows-x86_64\qemu-system-x86_64.exe': No such file or directory

Zamanımı boşa harcamadan nasıl çözdüm:

  1. ilk önce emülatörün cmd olarak çalıştığı klasörün yolunu kopyalayın, benim durumumda ise Android\Sdk\emulator&& Android\Sdk\toolsbu yüzden bu yollardan herhangi birini kopyalıyoruz!
  2. Sistem ortam değişkenlerini düzenleyin ve yeni değişken ekleyin, kopyaladığınız yolu değere yazın ve "EMULATOR" olarak adlandırın (veya değişkeni adlandırmak istediğiniz her şeyi).

Şimdi sadece bu gibi herhangi bir klasörde cmd komutunu çalıştırın %EMULATOR% -avd DEVICE_NAMEbizim değişkeni adında şekilde EMULATORkullanmadığınız olacak böylece %EMULATOR%yerine emulator! Cmd doğru emulator.exe dosyasını bu şekilde hedefleyecektir ve çalışacaktır.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.