Cette page explique comment développer des noyaux Android sur des appareils Cuttlefish.
Fichiers manifestes du noyau compatibles
Cuttlefish est compatible avec les fichiers manifestes du noyau suivants sur la branche de la dernière version d'Android et les versions AOSP GSI.
- Le android-latest-release- common-android-mainline
 
- Le android-15.0.0_r36- common-android16-6.12
- common-android15-6.6
- common-android14-6.1
- common-android14-5.15
 
- Le aosp-android13-gsi- common-android13-5.15
- common-android13-5.10
 
- Le aosp-android12-gsi- common-android12-5.10
- common-android12-5.4
- common-android-4.19-stable
 
- Le aosp-android11-gsi- common-android11-5.4
- common-android-4.19-stable
- common-android-4.14-stable
 
Vous trouverez ci-dessous les sources du noyau pour le développement du noyau sur les appareils Cuttlefish.
- kernel/common-android-mainline
- kernel/common-android16-6.12
- kernel/common-android15-6.6
- kernel/common-android14-6.1
- kernel/common-android14-5.15
- kernel/common-android13-5.15
- kernel/common-android13-5.10
Développer des noyaux Android
Pour développer des noyaux sur des appareils Cuttlefish, procédez comme suit :
- Clonez le fichier manifeste du dépôt du noyau approprié pour votre appareil Cuttlefish et apportez les modifications nécessaires. - mkdir common-android-mainline- cd common-android-mainline- repo init -u https://android.googlesource.com/kernel/manifest -b common-android-mainline- repo sync -c -j$(nproc) -q
- Créez le noyau et le disque RAM. Pour en savoir plus, consultez Créer les modules du fournisseur pour l'appareil virtuel. - tools/bazel run //common-modules/virtual-device:virtual_device_x86_64_dist- Si vous utilisez des fichiers manifestes de noyau - common-android-4.19-stable,- common-android-4.14-stableou- common-android11-5.4, exécutez :- BUILD_CONFIG=common/build.config.gki.x86_64 build/build.sh && BUILD_CONFIG=common-modules/virtual-device/build.config.cuttlefish.x86_64 build/build.sh- Au lieu de compiler en local (pour éviter de télécharger la source du noyau et de configurer un environnement de développement du noyau), vous pouvez télécharger les artefacts concernés sur ci.android.com. 
- Lancez le noyau et le ramdisk avec Cuttlefish. - cvd create \ -kernel_path=./out/virtual_device_x86_64/dist/bzImage \ -initramfs_path=./out/virtual_device_x86_64/dist/initramfs.img- Si vous lancez un noyau non-GKI (version 4.19 ou antérieure), omettez l'argument - -initramfs_path.- Si vous lancez le noyau sur une version aarch64 de Cuttlefish, utilisez la configuration de compilation - aarch64et l'artefact- Imageau lieu de- bzImage.- cvd create \ -kernel_path=./out/virtual_device_aarch64/dist/Image \ -initramfs_path=./out/virtual_device_aarch64/dist/initramfs.img