Загрузите, соберите и запустите

This page explains how to download, build, and run AAOS SDV on Cuttlefish.

Получите исходный код AAOS SDV

Use the instructions provided in Download the Android source .

Настройте среду сборки.

From within your working directory, source the envsetup.sh script to set up your build environment:

source build/envsetup.sh

This script imports several commands that let you work with the Android source code, including the commands used on this page. To view the source of the script, see platform/build/envsetup.sh . To view the built-in help, type hmm .

Выберите цель

Before building SDV, identify a target to build. To identify your target to build, use the lunch command followed by a string representing the target you're building for. For example, use this command to build a target for the Cuttlefish emulator:

lunch sdv_core_cf-trunk_staging-userdebug

This command selects the product, release configuration, and variant to build and stores the selection in the environment.

lunch targets for SDV are provided in a separate Git project located in the devices/google/sdv directory. See a detailed description of available targets at device/google/sdv/README.md . The main Cuttlefish ( cf ) targets are:

  • sdv_core_cf-trunk_staging-userdebug - Build an image of AAOS SDV Core ( sdv_core ) that runs on Cuttlefish ( cf ).
  • sdv_media_cf-trunk_staging-userdebug - Build an image of AAOS SDV Core with virtIO-virtualized media APIs ( sdv_media ).
  • sdv_media_har_cf-trunk_staging-userdebug - Build an image that extends the AAOS SDV media ( sdv_media_cf ) lunch target to contain the high-availability renderer (HAR). HAR runs automatically on boot.
  • sdv_ivi_cf-trunk_staging-userdebug - Build an image of In-Vehicle Infotainment (IVI) containing the SDV Gateway and Java sample apps.
  • sdv_ivi_cf_ds-trunk_staging-userdebug - Создает образ, расширяющий целевой объект AAOS SDV IVI ( sdv_ivi_cf ) и включающий реализацию DriverUI и Instrument Cluster от Display Safety.

Сборка AAOS SDV

Run the following command to build your target. Depending on the specification of your workstation, the first build takes between 30 and 60 minutes. Subsequent builds take significantly less time.

m

The output of your build appears in $OUT_DIR . If you build different targets, each target build appears in $OUT_DIR .

Test your build using Cuttlefish

После сборки AAOS SDV протестируйте свою сборку с помощью Cuttlefish.

  1. To start Cuttlefish with your build:

    cvd create

    Cuttlefish runs using your built target ( sdv_core_cf-trunk_staging-userdebug ). After Cuttlefish has booted, this message is displayed:

    VIRTUAL_DEVICE_BOOT_COMPLETED
    Virtual device booted successfully
  2. Run adb to connect to Cuttlefish.

  3. Run adb devices to verify that your build is running. A result similar to this is displayed:

    List of devices attached
    0.0.0.0:6520 device
  4. Выполните команду cvd stop , чтобы выключить устройство.

To run multiple instances of Cuttlefish with different builds, see Cuttlefish: multi-tenancy .

Устранение неполадок

В этом разделе объясняется, как устранять ошибки, которые могут возникнуть во время загрузки, сборки или запуска AAOS SDV.

ошибки RBE

If you encounter any Remote Build Execution (RBE) errors, remove definitions of USE_RBE and ENABLE_RBE_BOOTSTRAP from .bashrc or .zshrc

cvd: VM manager crosvm isn't supported on this machine

Если Cuttlefish сообщает, что менеджер виртуальных машин crosvm не поддерживается на вашем компьютере, выполните следующую команду для установки Cuttlefish:

sudo apt install cuttlefish-common

cvd not found

Если вы получили ошибку cvd not found ":

  1. Настройте сборку заново.
  2. Continue with Choose a target .

Cuttlefish crash loops

If Cuttlefish enters a crash loop:

  1. To stop all Cuttlefish instances, run cvd stop .
  2. Используйте Cuttlefish для повторного тестирования вашей сборки .