android 模拟器用3.18的内核无法启动,一直黑屏

duanguyuan 发布于 2016/06/04 12:07
阅读 1K+
收藏 0

模拟器内核使用的是https://android.googlesource.com/kernel/goldfish.git android-goldfish-3.18-dev这个分支,模拟器系统是自己编译的android 6.0.1.然后启动的时候debug信息如下:

emulator: Error while connecting to socket '127.0.0.1:1970': 111 -> Connection refusedemulator: ASC 127.0.0.1:1970: Retrying connection. Connector FD = 16

编译时内核和系统都是选的x86架构。

编译6.0.1源码后产生的kernel-qemu可以成功启动系统,但是纳闷的是为什么最新的android系统源码编译出来的自带内核版本却是3.4.67+.说好的3.18呢?

Android Version    |API Level  |Linux Kernel in AOSP
----------------------------------------------------
1.5   Cupcake      |3          |2.6.27
1.6   Donut        |4          |2.6.29
2.0/1 Eclair       |5-7        |2.6.29
2.2.x Froyo        |8          |2.6.32
2.3.x Gingerbread  |9, 10      |2.6.35
3.x.x Honeycomb    |11-13      |2.6.36
4.0.x Ice Cream San|14, 15     |3.0.1
4.1.x Jelly Bean   |16         |3.0.31
4.2.x Jelly Bean   |17         |3.4.0
4.3   Jelly Bean   |18         |3.4.39
4.4   Kit Kat      |19, 20     |3.10
5.x   Lollipop     |21, 22     |3.16.1
6.0   Marshmallow  |23         |3.18.10
(来源http://android.stackexchange.com/questions/51651/which-android-runs-which-linux-kernel

请问有成功使用过3.18的内核启动模拟器的吗?

加载中
0
duanguyuan
duanguyuan
搞定了。
环境:sdk manager 下载的 android-n x86 相关镜像 + android-goldfish-3.18-dev 源码

export ARCH=x86
export CROSS_COMPILE=x86_64-linux-android-
export PATH=x86_64-linux-android-4.9/bin/:$PATH
make i386_ranchu_defconfig

然后把生成的 bzImage 拷贝到 your/android/sdk/system-images/android-N/default/x86/
备份原来的kernel-ranchu,之后重命名bzImage为kernel-ranchu。
然后使用本目录下的system.img userdata.img ramdisk.img 和 kernel-ranchu 启动模拟器:
emulator -kernel ./kernel-ranchu -sysdir ./ -system ./system.img -data ./userdata.img -ramdisk ./ramdisk.img
之前失败关键在于make 时不是使用的i386_ranchu_defconfig。我还没搞清楚这个i386_ranchu_defconfig和i386_emu_defconfig有什么区别。
p
patrans
太感谢拉
返回顶部
顶部