android - supported - generate signed apk
Cómo compilar android goldfish 3.4 kernel y ejecutar en el emulador (1)
El objetivo "goldfish_defconfig" configura el kernel para un ARM 926 pero ahora el emulador está configurado para ejecutarse en el córtex A8 que es una arquitectura armv7. Deberías usar "goldfish_armv7_defconfig" en su lugar.
Siga estos pasos para construir un núcleo 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 construir un kernel 3.4 que luego puedes ejecutar así (supongo que tu estructura de directorio tiene sdk ramdisk.img por defecto)
./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
Pruébelo y háganos saber
Primero déjame decirte que estoy trabajando en MAC con OS X 10.7.5. Estoy tratando de compilar Goldfish 3.4 kernel y ejecutarlo en el emulador. Compila bien, pero cuando lo ejecuto, el emulador se abre y se congela. Cuando hago una "parte superior", puedo ver que el emulador funciona como loco, pero no aparece nada 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 a través de
./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 al 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 simplemente se congela aquí. ¿Alguien sabe los pasos para construir 3.4 goldfish kernel?