您的位置:首页 > 移动开发 > Android开发

Vmware安装ubuntu编译android内核源码详细过程

2016-07-29 20:34 731 查看
说明分为安卓源码(编译完毕有几百MB)和安卓内核源码(也就是linux源码编译完毕生成zImage只有几MB),

这里我们将android内核源码编译和运行,关于android源码请看我的另外一篇文章

一、环境

Ubuntu12.04 desktop 64位

 

二、下载源码并且编译

1、创建Android内核源代码路径

2、mkdir kernel

3、cd kernel

4、git clone https://android.googlesource.com/kernel/goldfish.git
5、cd goldfish

你可以ls –al发现有一个隐藏文件.git

6、git branch –a 查看有哪些版本

7、git checkoutremotes/origin/android-goldfish-2.6.29

会发现goldfish目录会有很多文件

 

8. cd kernel

9、git clone https://android.googlesource.com/platform/prebuilt  获得交叉编译环境

11 cd goldfish

12 export PATH=$PATH:~/android_kernel/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin

13、编辑Makefile

#ARCH?= $(SUBARCH)
#CROSS_COMPILE?=
ARCH?= arm
CROSS_COMPILE?= arm-eabi-
arm-eabi-和#交叉编译工具链前缀一致

14、makegoldfish_armv7_defconfig 或者make goldfish_defconfig

$makegoldfish_armv7_defconfig指令的意思是将目录WORKING_DIRECTORY/kernel/goldfish/arch/arm/configs/下的goldfish_armv7_defconfig文件内的Kconfig配置内容复制到WORKING_DIRECTORY/kernel/goldfish/目录下的.config文件中,.config文件是一个隐藏目录,保存着各个目录下Kconfig文件的配置.

 

15、make

等待几分钟编译完成

成功以后会在arch/arm/boot/生成 zImage,我这里只有1.7MB,o(╯□╰)o

 

三、运行

用之前编译的android源码里面的模拟器运行

先导入环境变量,导入环境变量之后emulator和adb才能运行

source build/envsetup.sh 

然后运行       
emulator -kernel'/root/android_kernel/goldfish/arch/arm/boot/zImage' &

 

在设置里面查看

或者

adb shell

cd proc

cat version

察看版本,根据机器名和日期可以判断是否是刚刚编译成功的内核。

 

 

 

参考文章

非常好的教程

http://blog.csdn.net/flydream0/article/details/7070392

http://jileniao.net/linux-android-building.html

 

网友提供的下载地址

http://blog.csdn.net/jiangwei0910410003/article/details/37988637
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息