**在Ubuntu16.04LTS平台上编译android内核kernel3.4。并用编译成功的内核映像文件在模拟器上运行。
在前面我们已经在改平台上编译出了android6.0.1的源码。用模拟器运行之后,我们进入设置/关于手机 选项可以查看到该版本源码默认对应的内核版本号。然后去官网下载对应的内核版本。我这个查看到内置内核对应的版本是3.4.67。因此我们你从官网下载3.4版本的内核源码。**
1.在android官网下载android内核源码。或者直接用git下载。下载方法网上很多,我这里就不再详细介绍。不知道可百度。
2.将内核源码下载下来之后解压,并放到android源码根目录的kernel文件夹下面。我这里命名为android-goldfish-3.4
,具体可自己定义。
**3.准备编译源码。
老版本的内核源码会在kernel根目录下面有默认的配置文件 goldfish_armv7_defconfig
。我下载这个没有这个文件。不过没关系,我们可以将内核根目录下面的 arch/arm/configs/
目录下面找到该配置文件,然后拷贝到内核根目录。**
4.执行 make goldfish_armv7_defconfig
进行配置。会在该目录生成.config的隐藏配置文件。
5.执行 make -j4
执行编译。这个编译很快。我的电脑大概一分多编译完成。编译完成之后会在内核根目录的arch/arm/boot/
目录下生成zImage映像文件。结果如下:
6.android源码根目录执行 emulator -kernel ./kernel/android-goldfish-3.4/arch/arm/boot/zImage
运行模拟器。然后进入设置/关于手机/ 查看结果。运行结果如下: