Android4.0.1源码及内核编译效果
2013-05-28 16:04
661 查看
源码编译环境配置参考:1、官网资料 http://source.android.com/source/initializing.html
2、http://blog.csdn.net/luoshengyang/article/details/6559955
3、http://blog.csdn.net/luoshengyang/article/details/6564592
4、其他博友的文章
一、编译源码
. /built/envsetup.sh
lunch full-eng
make -j8
(耗时2个小时,4核i7/8G RAM)
二、Emulator
lxc@lxc-pc:~/AndroidSC$ export PATH=$PATH:~/AndroidSC/out/host/linux-x86/bin
lxc@lxc-pc:~/AndroidSC$ export ANDROID_PRODUCT_OUT=~/AndroidSC/out/target/product/generic
其中,~/AndroidSC/out/host/linux-x86/bin有我们要执行的emulator命令,而~/AndroidSC/out/target/product/generic是Android镜像存放目录,下面执行emulator命令时会用到
[b]lxc@lxc-pc:~/AndroidSC$ emulator[/b]
模拟器运行需要四个文件,分别是Linux Kernel镜像zImage和Android镜像文件system.img、userdata.img和ramdisk.img。执行emulator命令时,如果不带任何参数,则 Linux Kernel镜像默认使用~/Android/prebuilt/android-arm/kernel目录下的kernel-qemu文件,而Android镜像文件则默认使用ANDROID_PRODUCT_OUT目录下的system.img、userdata.img和ramdisk.img,也就是我们刚刚编译出来的镜像问题。
当然,我们也可以以指定的镜像文件来运行模拟器,即运行emulator时,即:
[b][b]lxc@lxc-pc[/b]:~/AndroidSC$ emulator -kernel ./prebuilt/android-arm/kernel/kernel-qemu -sysdir ./out/target/product/generic -system system.img -data userdata.img -ramdisk ramdisk.img[/b]
三、内核编译
0、下载kernel
git branch -a
git checkout remotes/origin/archive/android-gldfish-2.6.29
1. 导出交叉编译工具目录到$PATH环境变量中去:
lxc@lxc-pc:~/AndroidSC/kernel/goldfish$ export PATH=$PATH:~/AndroidSC/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin
2. 修改goldfish目录下的Makefile文件的goldfish以下两行为:
# ARCH?= (SUBARCH)
# CROSS_COMPILE?=
ARCH
?= arm #体系结构为arm
CROSS_COMPILE ?= arm-eabi- #交叉编译工具链前缀,参考~/Android/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin目录
3、make goldfish_defconfig
make
四、查看内核版本
emulator -kernel ../kernel/goldfish/arch/arm/boot/zImage &
cd /proc ->pwd查询当前目录
cat version
2、http://blog.csdn.net/luoshengyang/article/details/6559955
3、http://blog.csdn.net/luoshengyang/article/details/6564592
4、其他博友的文章
一、编译源码
. /built/envsetup.sh
lunch full-eng
make -j8
(耗时2个小时,4核i7/8G RAM)
二、Emulator
lxc@lxc-pc:~/AndroidSC$ export PATH=$PATH:~/AndroidSC/out/host/linux-x86/bin
lxc@lxc-pc:~/AndroidSC$ export ANDROID_PRODUCT_OUT=~/AndroidSC/out/target/product/generic
其中,~/AndroidSC/out/host/linux-x86/bin有我们要执行的emulator命令,而~/AndroidSC/out/target/product/generic是Android镜像存放目录,下面执行emulator命令时会用到
[b]lxc@lxc-pc:~/AndroidSC$ emulator[/b]
模拟器运行需要四个文件,分别是Linux Kernel镜像zImage和Android镜像文件system.img、userdata.img和ramdisk.img。执行emulator命令时,如果不带任何参数,则 Linux Kernel镜像默认使用~/Android/prebuilt/android-arm/kernel目录下的kernel-qemu文件,而Android镜像文件则默认使用ANDROID_PRODUCT_OUT目录下的system.img、userdata.img和ramdisk.img,也就是我们刚刚编译出来的镜像问题。
当然,我们也可以以指定的镜像文件来运行模拟器,即运行emulator时,即:
[b][b]lxc@lxc-pc[/b]:~/AndroidSC$ emulator -kernel ./prebuilt/android-arm/kernel/kernel-qemu -sysdir ./out/target/product/generic -system system.img -data userdata.img -ramdisk ramdisk.img[/b]
三、内核编译
0、下载kernel
git branch -a
git checkout remotes/origin/archive/android-gldfish-2.6.29
1. 导出交叉编译工具目录到$PATH环境变量中去:
lxc@lxc-pc:~/AndroidSC/kernel/goldfish$ export PATH=$PATH:~/AndroidSC/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin
2. 修改goldfish目录下的Makefile文件的goldfish以下两行为:
# ARCH?= (SUBARCH)
# CROSS_COMPILE?=
ARCH
?= arm #体系结构为arm
CROSS_COMPILE ?= arm-eabi- #交叉编译工具链前缀,参考~/Android/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin目录
3、make goldfish_defconfig
make
四、查看内核版本
emulator -kernel ../kernel/goldfish/arch/arm/boot/zImage &
cd /proc ->pwd查询当前目录
cat version
相关文章推荐
- 如何在32位ubuntu11.10 下编译android 4.0.1源码和goldfish内核
- 如何在32位ubuntu11.10 下编译android 4.0.1源码和goldfish内核
- 如何在32位ubuntu11.10 下编译android 4.0.1源码和goldfish内核
- 如何在32位ubuntu11.10 下编译android 4.0.1源码和goldfish内核
- 32位ubuntu10.04编译Android4.0.1内核
- Android系统篇之----编写简单的驱动程序并且将其编译到内核源码中
- 编译android内核源码
- android内核源码下载和编译
- Android 4.0.1 源码下载,编译和运行
- Android环境建立之编译Android内核源码笔记---2
- Android 4.0.1源码编译错误记录笔记
- android 4.0.1源码编译,学习错误解决
- Vmware安装ubuntu编译android内核源码详细过程
- Android内核源码学习:1、MacOS 编译Android源码-工具
- Android4.0.1 模拟器内核 最新下载地址及编译步骤
- Ubuntu下Android源码以及内核下载与编译
- android 全志a10(2.3.4)开发二(linux内核编译及源码编译)
- 编译Android goldfish内核源码
- Ubuntu12.04编译Android4.0.1源码全过程-----附wubi安装ubuntu编译android源码硬盘空间不够的问题解决
- 编译Android源码和内核源码的归纳总结