HardBirch

Android ROM制作步骤详解

时间:13-09-08 栏目:安卓技术篇 作者:魔豆先生 评论:0 点击: 2,920 次

Android ROM制作步骤 (以Ubuntu为例)

首先安装必要的软件包,
sudo apt-get install flex bison gperf libsdl-dev libesd0-dev libwxgtk2.6-dev build-essential zip curl valgrind sun-java6-jdk git-core gnupg
然后,修改~/.bashrc文件,添加两个环境变量:
export JAVA_HOME=/usr/lib/jvm/java-6-sun-1.6.0.20
export ANDROID_JAVA_HOME=$JAVA_HOME
重启终端模拟器,下面的例子,是把源代码存放在~/droid/下为例,自己示情况自行更改。(你应当保证分区拥有至少5G的空闲空间)
mkdir /droid
curl http://android.git.kernel.org/repo >~/droid/repo
chmod a+x ~/droid/repo
sudo cp -f ./repo /bin
repo init -u git://android.git.kernel.org/platform/manifest.git
\\这一句操作是获取整个服务器上的源码资料,如果我们只要2.2的源码,则加上后缀:-b froyo
repo sync
\\repo sync开始同步操作,视网络情况等待一个多小时左右。
等待同步完成,终端下键入make回车,它可能提示你版本不正确。
那么请修改~/droid/build/core/main.mk,自己Ctrl+F搜索修改成下面这个样子:
# Check for the correct version of javac
javac_version := $(shell javac -version 2>&1 | head -n 1 | grep '[ "]1\.[56][\. "$$]')

还有一处:
# Check for the correct version of java
java_version := $(shell java -version 2>&1 | head -n 1 | grep '[ "]1\.[56][\. "$$]')
修改之后,无论是JAVA 1.5还是1.6均可以正常编译Android了。
make操作可能要持续两个小时左右,而且随着操作进行,Droid文件夹的体积也会增大,所以你必须保证有充足的空闲空间。
P.S. CM的WIKI上说要增加一个环境变量以声明Android toolchain的值,修改~/.bashrc添加:
export CCOMPILER=${HOME}/droid/prebuilt/linux-x86/toolchain/arm-eabi-4.4.0/bin/arm-eabi-

获取CM的Kernel,下面的操作翻译自CM的wiki:

  • 创建一个新的目录mkdir androkern
  • 进入目录cd androkern
  • 下载内核
    git clone git://github.com/CyanogenMod/cm-kernel.git
  • 进入源码文件夹cd cm-kernel
  • 获取一个内核的 .config 文件.可以从电话里拖出来也可以从boot.img中分离出来
    • 从电话中获取.config文件adb pull /proc/config.gz /home/user_name/androkern/cm-kernel/config.gz
      • 解压缩config.gz并重命名为.configgunzip config.gz && mv config .config
    • 你可以从最新的boot.img中提取.config
      • scripts/extract-ikconfig boot.img > .config
  • 运行make ARCH=arm CROSS_COMPILE=$CCOMPILER oldconfig将会提供几个选择,你可以什么也不做按回车键保持默认状态。
  • 自定义内核
    make ARCH=arm CROSS_COMPILE=$CCOMPILER menuconfig
  • 编译make ARCH=arm CROSS_COMPILE=$CCOMPILER这个操作可能要持续几十分钟甚至几个小时

最后你将得到一个内核镜像:cm-kernel/arch/arm/boot/zImage

 

英文版过程 参考WIKI:http://wiki.cyanogenmod.com/index.php?title=Building_from_source

 

声明: 本文由( 魔豆先生 )原创编译,转载请保留链接: Android ROM制作步骤详解

Android ROM制作步骤详解:等您坐沙发呢!

发表评论


QQ群互动

Linux系统与内核学习群:194051772

WP建站技术学习交流群:194062106

魔豆之路QR

魔豆的Linux内核之路

魔豆的Linux内核之路

优秀工程师当看优秀书籍

优秀程序员,要看优秀书!

赞助商广告

友荐云推荐