Ubuntu 10.04下Android的内核和文件系统编译
2010-10-13 13:17
399 查看
1 、下载内核和文件系统
1.1 下载文件系统
1) Git的安装
在 Ubuntu
10.04上安装 git只要设定了正确的更新源,然后使用 apt-get就可以了,有什么依赖问题,就让它自己解决吧。其中 curl是一个利用
URL语法在命令行下工作的文件传输工具,会在后面安装 Repo的时候用到。 (貌似 Ubuntu10.04已经默认安装了
git1.7.04,所以这步就不需要了 )
系统提供了默认下载软件包的地址 ,但是速度较慢。服务器的地址在 /etc/apt/sources.list 中
设置 ,可以采用附件中的地址 ,或者在网上寻找相关的网址 ,www.linuxidc.com注意需要保证操作系统的版本 一致。
2 ) 安装 JDK1.5
在编译 Android
过程中 , 需要 JDK1.5, 即使系统里已经安装了 JDK1.6, 也需要重新安装
JDK1.5, 并设置 $ANDROID_JAVA_HOME 为 JDK1.5 的根目录。为了安装 JDK1.5, 需要添加如下内容到
/etc/apt/sources.list 文件末尾
deb http://tw.archive. href="http://www.linuxidc.com/topicnews.aspx?tid=2" target=_blank>Ubuntu
.com/ubuntu/
jaunty main restricted universe multiverse
deb-src http://tw.archive. href="http://www.linuxidc.com/topicnews.aspx?tid=2" target=_blank>Ubuntu
.com/ubuntu/
jaunty main restricted universe multiverse
sudo apt-get update
sudo apt-get install sun-java5-jd
注释掉 /etc/apt/sources.list 中刚刚添加的两行
sudo apt-get update
export JAVA_HOME=/usr/lib/jvm/java-1.5.0-sun( 根据具体的安装路径 )
export Android
_JAVA_HOME=$JAVA_HOME
3 )编译
cd ~/myAndroid
/
make
编译时一个漫长的过程 , 需要耐心的等待。我在编译的过程中遇到一些问题 , 大部分是由于
软件包没有完全安装 , 编译完成后会在 ~/myAndroid
/out/target/product/generic
下产生一些
image 文件 .
大功告成 , 运行模拟器
export Android
_PRODUCT_OUT=/usr/open_src/android/out/target/product/generic
cd /usr/open_src/Android
/out/host/linux-x86/bin
./emulator
2.2 编译内核
1) 进入内核目录
cd ~/Android
_kernel/
2 )获取内核编译配置文件
编译前需要得到 Android
的内核编译参数的配置文件,该文件需要从 android sdk 中的模拟器中得到。启动 android 模拟器,然后通过 adb
得到模拟器中提供的内核配置文件:
$emulator &
$adb pull /proc/config.gz
这
时候 adb 工具会连接模拟器,并从它里面下载一个叫做 config.gz 的文件到你的当前目录下。将其移动至 kernel
目录,解压该文件得到 config ,将其重命名为 .config ,这样就可以跳过 make config 而直接得到 Makefile
所需要的内核配置文件。
$ gunzip config.gz
$ mv config .config
3. 修改 Makefile
修改第 187 行,将 CROSS_COMPILE 值改为 ~/myAndroid
/prebuilt/linux-x86/toolchain/arm-eabi-4.3.1/bin/arm-eabi-
,我用了 andoird 提供的交叉编译工具,如果你只是想单独编译内核,那么需要单独下一个交叉编译工具,并将修改 CROSS_COMPILE
的值。(可以参照http://www.linuxidc.com/Linux/2010-08/27630.htm
)修改此处意在告诉 make 在编译的时候要使用该工具链。
4. 开始编译
在 kernel 目录下执行 make:
$ make
除个别警告外编译过程一切顺利,最终在
/kernel/arch/arm/boot 目录下面生成一个 zImage ,即为编译好的内核镜像了。
1.1 下载文件系统
1) Git的安装
在 Ubuntu
10.04上安装 git只要设定了正确的更新源,然后使用 apt-get就可以了,有什么依赖问题,就让它自己解决吧。其中 curl是一个利用
URL语法在命令行下工作的文件传输工具,会在后面安装 Repo的时候用到。 (貌似 Ubuntu10.04已经默认安装了
git1.7.04,所以这步就不需要了 )
设置 ,可以采用附件中的地址 ,或者在网上寻找相关的网址 ,www.linuxidc.com注意需要保证操作系统的版本 一致。
2 ) 安装 JDK1.5
在编译 Android
过程中 , 需要 JDK1.5, 即使系统里已经安装了 JDK1.6, 也需要重新安装
JDK1.5, 并设置 $ANDROID_JAVA_HOME 为 JDK1.5 的根目录。为了安装 JDK1.5, 需要添加如下内容到
/etc/apt/sources.list 文件末尾
deb http://tw.archive. href="http://www.linuxidc.com/topicnews.aspx?tid=2" target=_blank>Ubuntu
.com/ubuntu/
jaunty main restricted universe multiverse
deb-src http://tw.archive. href="http://www.linuxidc.com/topicnews.aspx?tid=2" target=_blank>Ubuntu
.com/ubuntu/
jaunty main restricted universe multiverse
sudo apt-get update
sudo apt-get install sun-java5-jd
注释掉 /etc/apt/sources.list 中刚刚添加的两行
sudo apt-get update
export JAVA_HOME=/usr/lib/jvm/java-1.5.0-sun( 根据具体的安装路径 )
export Android
_JAVA_HOME=$JAVA_HOME
3 )编译
cd ~/myAndroid
/
make
编译时一个漫长的过程 , 需要耐心的等待。我在编译的过程中遇到一些问题 , 大部分是由于
软件包没有完全安装 , 编译完成后会在 ~/myAndroid
/out/target/product/generic
下产生一些
image 文件 .
大功告成 , 运行模拟器
export Android
_PRODUCT_OUT=/usr/open_src/android/out/target/product/generic
cd /usr/open_src/Android
/out/host/linux-x86/bin
./emulator
2.2 编译内核
1) 进入内核目录
cd ~/Android
_kernel/
2 )获取内核编译配置文件
编译前需要得到 Android
的内核编译参数的配置文件,该文件需要从 android sdk 中的模拟器中得到。启动 android 模拟器,然后通过 adb
得到模拟器中提供的内核配置文件:
$emulator &
$adb pull /proc/config.gz
这
时候 adb 工具会连接模拟器,并从它里面下载一个叫做 config.gz 的文件到你的当前目录下。将其移动至 kernel
目录,解压该文件得到 config ,将其重命名为 .config ,这样就可以跳过 make config 而直接得到 Makefile
所需要的内核配置文件。
$ gunzip config.gz
$ mv config .config
3. 修改 Makefile
修改第 187 行,将 CROSS_COMPILE 值改为 ~/myAndroid
/prebuilt/linux-x86/toolchain/arm-eabi-4.3.1/bin/arm-eabi-
,我用了 andoird 提供的交叉编译工具,如果你只是想单独编译内核,那么需要单独下一个交叉编译工具,并将修改 CROSS_COMPILE
的值。(可以参照http://www.linuxidc.com/Linux/2010-08/27630.htm
)修改此处意在告诉 make 在编译的时候要使用该工具链。
4. 开始编译
在 kernel 目录下执行 make:
$ make
除个别警告外编译过程一切顺利,最终在
/kernel/arch/arm/boot 目录下面生成一个 zImage ,即为编译好的内核镜像了。
相关文章推荐
- 编译android内核和文件系统,已经安装jdk,提示build/core/config.mk:268: *** Error: could not find jdk tools.jar
- Android内核开发:系统编译输出的镜像文件
- Android的内核和文件系统编译
- Android Goldfish内核编译 + eCryptfs文件加解密系统的内核模块配置
- Android内核开发之三:系统编译输出的镜像文件
- 32位机器Ubuntu系统编译android 内核注意修改点
- 搭建ubuntu文件系统编译android
- 【Android 系统开发】 编译 Android文件系统 u-boot 内核 并烧写到 OK-6410A 开发板上
- 【Android 系统开发】 编译 Android文件系统 u-boot 内核 并烧写到 OK-6410A 开发板上
- 【Android 系统开发】 编译 Android文件系统 u-boot 内核 并烧写到 OK-6410A 开发板上
- ubuntu14.04编译Tiny210 android文件系统
- Android内核开发:系统编译输出的镜像文件
- 编译android内核和文件系统,已经安装jdk,提示build/core/config.mk:268: *** Error: could not find jdk tools.jar
- Android内核开发:系统编译输出的镜像文件
- TQ2440编译好的android1.0内核及文件系统
- android 编译之后的文件系统和内核
- 32位机器Ubuntu系统编译android 内核注意修改成64位
- ubuntu10.04下android最新内核源码编译
- Android内核开发:系统编译输出的镜像文件
- ubuntu13.10编译android文件系统4.0.4错误全部解析