编译Android系统源码需要以下工具:git工具,repo工具,java sdk,主机编译工具等
我的实验环境是ubuntu 10.10,步骤如下
1.打开终端输入
alex@alex-Linux:~$ sudo -i
root@alex-Linux:~$ apt-get install git-core flex bison gperf libesd0-dev zip
root@alex-Linux:~$ apt-get install libwxgtk2.6-dev zlib1g-dev build-essential libstdc++5
root@alex-Linux:~$ apt-get install tofrodos x-dev libx11-dev libncurses5-dev
root@alex-Linux:~$ apt-get install sun-java5-jdk
如果在上述过程中提示无法找到源,请参阅 在源配置中添加ubuntu9.04源
2.编译Android系统源码官方推荐使用Java5.如果本机安装了Java6,应将其配置成java5.需要卸载java6
alex@alex-Linux:~$ apt-get remove sun-java6-jdk
3.配置java环境
root@alex-Linux:/etc/apt# update-alternatives --config java
选择 路径 优先级 状态
------------------------------------------------------------
* 0 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 自动模式
1 /usr/lib/jvm/java-1.5.0-sun/jre/bin/java 53 手动模式
2 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 手动模式
3 /usr/lib/jvm/java-6-sun/jre/bin/java 63 手动模式
选择1
4.Android系统源码在编译过程中需要编译主机工具,所以还需要主机打gcc工具链,而对于编译目标机文件,ANdroid在prebuilt目录中集成了gcc交叉编译工具链。repo是对调用git打封装打工具,安装repo
alex@alex-Linux:~$ sudo -i
root@alex-Linux:~# cd /bin
root@alex-Linux:/bin# curl http://android.git.kernel.org/repo > ~/bin/repo
如果提示curl未安装,请输入sudo apt-get install curl
设置bin/repo的可执行权限alex@alex-Linux:~/bin$ chmod a+x ~/bin/repo
5.下载Android源码 代码库打路径为android.git.kernel.org 可以通过网页浏览代码库的内容。在用户主目录新建androidsource进入该目录
alex@alex-Linux:~/androidsource$ repo init-u git://android.git.kernel.org/platform/manifast.git
当出现Your Name [xxx]:
Your Email[xxx@xnadevelop.com]:时输入相应用户名和Email,经过repo init后,执行repo sync 下载Android系统源文件
时间很长,请耐心等待。
下载完毕后进入源码所在目录输入make
进行编译。时间很长,同样请耐心等待。
最后输出一下文字
target SharedLib: sensors.mahimahi (out/target/product/generic/obj/SHARED_LIBRARIES/sensors.mahimahi_intermediates/LINKED/sensors.mahimahi.so)
target Non-prelinked: sensors.mahimahi (out/target/product/generic/symbols/system/lib/hw/sensors.mahimahi.so)
target Strip: sensors.mahimahi (out/target/product/generic/obj/lib/sensors.mahimahi.so)
Generated: (out/target/product/generic/android-info.txt)
Target system fs image: out/target/product/generic/obj/PACKAGING/systemimage_intermediates/system.img
Install system fs image: out/target/product/generic/system.img
Target ram disk: out/target/product/generic/ramdisk.img
Target userdata fs image: out/target/product/generic/userdata.img
Installed file list: out/target/product/generic/installed-files.txt





更多相关文章

  1. ubuntu 下编译android libjpeg-turbo-1.5.2
  2. Android快速开发框架Android_BaseLib,集成了常用工具类,自定义View
  3. android 开发 @override 编译错误 解决办法
  4. 一个APK反编译利器Apktool(android汉化)
  5. Android(安卓)为【apk】文件签名,增加修改系统时间等权限
  6. linux ,Android基础知识总结
  7. Android(安卓)Native中Android.mk编译链接时命名冲突的问题
  8. Android编译系统中的Android.bp、Blueprint与Soong
  9. android线程池的封装工具类

随机推荐

  1. 搭建 android 代码镜像服务
  2. Android获取所在地城市名2
  3. 转:Android下文件操作模式(含SDCard的读写)
  4. 理解Android中垃圾回收日志信息
  5. 【Android】如何用MediaPlayer实现一个简
  6. Android中的数据库
  7. 如何去除launcher 上默认的 google searc
  8. Android 筆記-Linux Kernel SMP (Symmetr
  9. android 包管理系统分析
  10. Android(安卓)install apk 兼容至 Androi