编译Android1.6(Donut) Emulator的内核

编译Android1.6(Donut) Emulator的内核

SDK更新内核到了2.6.29,我们可以自己来编译一个。
首先,你需要下载最新的Android Emulator的内核代码,它位于“Common Android Kernel Tree”

  1. mkdir kernel
  2. cd kernel
  3. git clone git://android.git.kernel.org/kernel/common.git
  4. cd common
  5. git checkout origin/android-goldfish-2.6.29 -b android-goldfish-2.6.29

然后,你还需要一个gcc编译器来编译kernel,它位于你的Android repo目录下,eg:prebuilt/linux-x86/toolchain/arm-eabi-4.4.0/bin/。如果你还没有初始化你的repo,那么开始吧:

  1. mkdir mydroid
  2. cd mydroid
  3. repo init -u git://android.git.kernel.org/platform/manifest.git
  4. repo sync

好了,准备环境变量还是编译:

  1. export PATH=$PATH:<REPO_ROOT>/prebuilt/linux-x86/toolchain/arm-eabi-4.4.0/bin/
  2. export ARCH=arm
  3. export CROSS_COMPILE=arm-eabi-
  4. make goldfish_defconfig
  5. make

编 译完成后,你就会得到Emulator的内核:arch/arm/boot/zImage。把他命名为kernel-qemu,替代SDK1.6的 kernel-qemu(platforms/android-1.6/images/kernel-qemu),当然,你也可以直接将这个内核拷贝的 AVD的目录(e.g. $HOME/.android/avd/donut.avd/kernel-qemu)。这样,再次运行Emulator,他就会使用新的内核了。

emulator: argv[00] = "./emulator"
emulator: argv[01] = "-kernel"
emulator: argv[02] = "/home/william/.android/avd/donut.avd/kernel-qemu"
....
Uncompressing Linux......................................................................................... done, booting the kernel.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值