Cómo compilar el pez goldfish 3.4 kernel y ejecutar en el emulador
En primer lugar permítanme decirles que estoy trabajando en MAC con OS X 10.7.5. Estoy tratando de compilar el kernel de Goldfish 3.4 y ejecutarlo en el emulador. Se compila bien, pero cuando lo ejecuto el emulador se abre y se congela. Cuando hago un "top", puedo ver el emulador corriendo como loco pero nada aparece en la pantalla. Aquí es cómo compilé el kernel
git clone https://android.googlesource.com/kernel/goldfish.git git checkout -t origin/android-goldfish-3.4 -b goldfish3.4 make ARCH=arm goldfish_defconfig make ARCH=arm SUBARCH=arm CROSS_COMPILE=/Volumes/androidSpace/android_work/prebuilts/gcc/darwin-x86/arm/arm-eabi-4.6/bin/arm-eabi-
Luego ejecuto el emulador vía
- Android Repo init fallido
- ¿Cómo se crea un módulo de kernel cargable para Android?
- Adición de un nuevo portador de red a Android
- Construyendo módulos Android separados con dexpreopt deshabilitado
- Construir android - ¿cómo cargar la imagen del kernel en el comando mkbootimg?
./emulator -debug init -kernel /Volumes/androidSpace/goldfish/goldfish/arch/arm/boot/zImage -system /Volumes/androidSpace/android_work/out/target/product/generic/system.img -ramdisk /Volumes/androidSpace/android_work/out/target/product/generic/ramdisk.img -avd firstAvd -wipe-data
Aquí está la última parte de la salida de depuración de ejecutar el emulador
QEMU options list: emulator: argv[00] = "./emulator64-arm" emulator: argv[01] = "-android-hw" emulator: argv[02] = "/Users/deathwillarrive/.android/avd/firstAvd.avd/hardware-qemu.ini" Concatenated QEMU options: ./emulator64-arm -android-hw /Users/deathwillarrive/.android/avd/firstAvd.avd/hardware-qemu.ini emulator: registered 'boot-properties' qemud service emulator: nand_add_dev: system,size=0x22600000,initfile=/Volumes/androidSpace/android_work/out/target/product/generic/system.img,pagesize=512,extrasize=0 emulator: mapping 'system' NAND image to /tmp/android-deathwillarrive/emulator-2Wyv0t emulator: nand_add_dev: userdata,size=0xc800000,file=/Users/deathwillarrive/.android/avd/firstAvd.avd/userdata-qemu.img,initfile=/Users/deathwillarrive/.android/avd/firstAvd.avd/userdata.img,pagesize=512,extrasize=0 emulator: registered 'boot-properties' qemud service emulator: Adding boot property: 'dalvik.vm.heapsize' = '64m' emulator: Adding boot property: 'qemu.sf.lcd_density' = '320' emulator: Adding boot property: 'qemu.hw.mainkeys' = '0' emulator: Adding boot property: 'qemu.sf.fake_camera' = 'none' emulator: nand_add_dev: cache,size=0x4200000,file=/Users/deathwillarrive/.android/avd/firstAvd.avd/cache.img,pagesize=512,extrasize=0 emulator: Initializing hardware OpenGLES emulation support emulator: Kernel parameters: qemu.gles=0 qemu=1 console=ttyS0 android.qemud=ttyS1 android.checkjni=1 ndns=1 emulator: Trace file name is not set emulator: autoconfig: -scale 0.583594 emulator: Could not open file: (null)/system/build.prop: No such file or directory emulator: control console listening on port 5554, ADB on port 5555 emulator: sent '0012host:emulator:5555' to ADB server emulator: ping program: /Volumes/androidSpace/android_work/out/host/darwin-x86/bin/./DDSs
La salida se congela aquí. ¿Alguien sabe los pasos para construir 3.4 kernel de peces de colores.
- ¿Dónde está el reporte git de la fuente del kernel de Android?
- Cómo desarrollar la barra de estado personalizado en android JellyBean 4.2.2
- Renuncia a system.img en un dispositivo
- Crea Android AOSP system.img de framework.jar cambiado
- Error de compilación de Android: ro.build.fingerprint no puede exceder 91 bytes
- Cómo navegar / ver / editar las fuentes de la plataforma android (AOSP) utilizando Intellij IDE (Android Studio preferiblemente)?
- Fuentes de la biblioteca de soporte de pruebas en Android Studio
- ¿Cómo modificar AOSP para permitir que aplicaciones específicas obtengan acceso de root?
El objetivo "goldfish_defconfig" configura el kernel para un ARM 926 pero ahora el emulador está configurado para ejecutarse en la corteza A8 que es una arquitectura armv7. Debe utilizar "goldfish_armv7_defconfig" en su lugar.
Siga estos pasos para crear un kernel 3.4 para el emulador
git clone https://android.googlesource.com/kernel/goldfish.git git checkout -t origin/android-goldfish-3.4 -b goldfish3.4 make ARCH=arm goldfish_armv7_defconfig make ARCH=arm SUBARCH=arm CROSS_COMPILE=/Volumes/androidSpace/android_work/prebuilts/gcc/darwin-x86/arm/arm-eabi-4.6/bin/arm-eabi-
Esto debería crear un núcleo 3.4 que puede ejecutar de esta manera (supongo que su estructura de directorios tiene sdk predeterminado ramdisk.img)
./emulator -debug init -kernel /Volumes/androidSpace/goldfish/goldfish/arch/arm/boot/zImage -system /Volumes/androidSpace/android_work/out/target/product/generic/system.img -ramdisk /Volumes/androidSpace/android_work/out/target/product/generic/ramdisk.img -avd firstAvd -wipe-data
Pruebe esto y háganoslo saber
- En un clic largo, elimina el elemento
- Notification pendingIntent contentIntent falla cuando terminan las llamadas de actividad ()