İndirme, derleme ve çalıştırma

Bu sayfada, Cuttlefish'te AAOS SDV'nin nasıl indirileceği, oluşturulacağı ve çalıştırılacağı açıklanmaktadır.

AAOS SDV kaynak kodunu alma

Android kaynağını indirme bölümündeki talimatları uygulayın.

Derleme ortamınızı ayarlama

Çalışma dizininizde, derleme ortamınızı ayarlamak için envsetup.sh komut dosyasını kaynak olarak kullanın:

source build/envsetup.sh

Bu komut dosyası, bu sayfada kullanılanlar da dahil olmak üzere Android kaynak koduyla çalışmanıza olanak tanıyan çeşitli komutları içe aktarır. Komut dosyasının kaynağını görüntülemek için platform/build/envsetup.sh bölümüne bakın. Yerleşik yardımı görüntülemek için hmm yazın.

Hedef seçin

SDV'yi oluşturmadan önce, oluşturulacak bir hedef belirleyin. Oluşturulacak hedefi belirlemek için lunch komutunu ve ardından oluşturulacak hedefi temsil eden bir dizeyi kullanın. Örneğin, Cuttlefish emülatörü için hedef oluşturmak üzere bu komutu kullanın:

lunch sdv_core_cf-trunk_staging-userdebug

Bu komut, oluşturulacak ürünü, yayın yapılandırmasını ve varyantı seçer ve seçimi ortamda saklar.

lunch dizininde bulunan ayrı bir Git projesinde sağlanır.devices/google/sdv Kullanılabilir hedeflerin ayrıntılı açıklaması için device/google/sdv/README.md adresini ziyaret edin. Başlıca Cuttlefish (cf) hedefleri şunlardır:

  • sdv_core_cf-trunk_staging-userdebug - Cuttlefish'te (cf) çalışan AAOS SDV Core görüntüsü oluşturun (sdv_core).
  • sdv_media_cf-trunk_staging-userdebug - virtIO sanallaştırılmış medya API'leriyle (sdv_media) AAOS SDV Core görüntüsü oluşturun.
  • sdv_media_har_cf-trunk_staging-userdebug - AAOS SDV medyası (sdv_media_cf) lunch hedefini, yüksek kullanılabilirlik oluşturucuyu (HAR) içerecek şekilde genişleten bir görüntü oluşturun. HAR, başlatma sırasında otomatik olarak çalışır.
  • sdv_ivi_cf-trunk_staging-userdebug - SDV Gateway ve Java örnek uygulamalarını içeren bir araç içi bilgi-eğlence (IVI) görüntüsü oluşturun.
  • sdv_ivi_cf_ds-trunk_staging-userdebug - AAOS SDV IVI hedefini (sdv_ivi_cf) genişleten ve Display Safety'nin DriverUI ile Gösterge Paneli uygulamasını içeren bir görüntü oluşturun.

AAOS SDV'yi oluşturma

Hedefinizi oluşturmak için aşağıdaki komutu çalıştırın. İş istasyonunuzun özelliklerine bağlı olarak ilk derleme 30 ila 60 dakika sürer. Sonraki derlemeler çok daha kısa sürer.

m

Derlemenizin çıktısı $OUT_DIR içinde görünür. Farklı hedefler oluşturursanız her hedef derlemesi $OUT_DIR içinde görünür.

Cuttlefish kullanarak derlemenizi test etme

AAOS SDV'yi oluşturduktan sonra Cuttlefish'i kullanarak derlemenizi test edin.

  1. Cuttlefish'i derlemenizle başlatmak için:

    cvd create

    Cuttlefish, oluşturduğunuz hedefi kullanarak çalışır (sdv_core_cf-trunk_staging-userdebug). Cuttlefish başlatıldıktan sonra şu mesaj gösterilir:

    VIRTUAL_DEVICE_BOOT_COMPLETED
    Virtual device booted successfully
  2. Cuttlefish'e bağlanmak için adb komutunu çalıştırın.

  3. Derlemenizin çalıştığını doğrulamak için adb devices komutunu çalıştırın. Buna benzer bir sonuç gösterilir:

    List of devices attached
    0.0.0.0:6520 device
  4. Cihazı kapatmak için cvd stop komutunu çalıştırın.

Farklı derlemelerle birden fazla Cuttlefish örneği çalıştırmak için Cuttlefish: çok kiracılılık başlıklı makaleyi inceleyin.

Sorun giderme

Bu bölümde, AAOS SDV'nin indirilmesi, oluşturulması veya çalıştırılması sırasında oluşabilecek hataların nasıl giderileceği açıklanmaktadır.

RBE hataları

Herhangi bir Uzaktan Derleme Yürütme (RBE) hatasıyla karşılaşırsanız USE_RBE ve ENABLE_RBE_BOOTSTRAP tanımlarını .bashrc veya .zshrc'den kaldırın.

cvd: VM yöneticisi crosvm bu makinede desteklenmiyor

Cuttlefish, sanal makine yöneticisinin crosvm makinenizde desteklenmediğini bildiriyorsa Cuttlefish'i yüklemek için aşağıdaki komutu çalıştırın:

sudo apt install cuttlefish-common

cvd not found

cvd not found hatası alırsanız:

  1. Derlemenizi tekrar ayarlayın.
  2. Hedef seçme ile devam edin.

Cuttlefish kilitlenme döngüleri

Cuttlefish kilitlenme döngüsüne girerse:

  1. Tüm Cuttlefish örneklerini durdurmak için cvd stop komutunu çalıştırın.
  2. Derlemenizi yeniden test etmek için Cuttlefish'i kullanın.