android内核编译,终于ok了,总结之
编译android内核
1.准备工作: (ubuntu1110 32位)
推荐使用ubuntu等linuxOS,下载好eclipse,安装好JDK, 安装好android的SDK(http://developer.android.com/sdk/index.html 和http://developer.android.com/sdk/installing.html 有详细官方介绍), 在eclipse中成功打开android 手机模拟器即OK。
2.初始化编译环境 :
http://source.android.com/source/initializing.html ,关注该网页上的“installing required packages”,其中有的软件包因为版本问题而安装不上,不用管它,之后遇到错误再单独解决。
3.下载内核源码:
http://source.android.com/source/building-kernels.html
android 2.3 内核 下载 $ git clone https://android.googlesource.com/kernel/goldfish.git 需要等待一段时间。
4.下载交叉编译器:
按照上面网页中的说法是下载:
$ git clone https://android.googlesource.com/platform/prebuilt
下载完后记得:
$ export PATH=$(pwd)/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin:$PATH
(该步骤有可能耗费大量时间,依据网速不同,几个小时到几天不等,或许可以尝试git clone 后面的地址只下载prebuilt/linux-x86/toolchain,那样就需要下载的东西很少了,此方法我还没有尝试;或者跳过该步骤参考第6点)
5.设置参数以及编译:
$ export ARCH=arm
$ export SUBARCH=arm
$ export CROSS_COMPILE=arm-eabi-
$ cd goldfish // 进入下载的源代码目录
$ git checkout
$ make goldfish_defconfig
$ make
6.报错信息:
若有报错说找不到 (arm-eabi-gcc command not found)等等,尝试使用http://blog.csdn.net/davidbeckham2901/article/details/7397447 中说到的解决方案即可(即采用另外一个交叉编译器)。
7.测试:
最后,测试一下刚才编译的内核:
emulator -avd myavd -kernel ~/goldfish/arch/arm/boot/zImage
emulator若系统找不到,可以去android SDK中某文件夹找到,加入系统PATH即可。 -avd后面的参数 myavd即为模拟器的名字,这个我是在eclipse中的模拟器管理中新建的一个模拟器,用那个模拟器的名字即可。 -kernel后面的参数就找到刚才编译出的内核的路径。
若启动模拟器失败,可尝试关闭后再启动。第一次启动模拟器时可能需要等待比较长的时间,3分钟到15分钟不等。
更多相关文章
- 为Android内核添加hello world驱动并添加到menuconfig菜单
- ubuntu10.10下编译android内核源码
- 在Ubuntu上下载编译安装Android最新内核源代码
- RHEL5 CENTOS5上编译Android内核的步骤
- android 设备开发 让应用程序出现在模拟器启动列表中
- [Android] Eclipse Android中设置模拟器屏幕大小几种方法
- Android模拟器及编译环境安装新手入门-3
- Android模拟器
- Android入门 — 模拟器的创建和运行