ubuntu14.04下Andriod2.3.1编译环境的搭建
准备工作:获取andriod2.3.1的源码包,以及对应的jdk1.6.0.26.
1、编译andriod2.3.1需要gcc4.4的版本,但是ubuntu14.04自带的版本比这个高。需要通过以下指令进行设置。
sudo apt-get install gcc-4.4 g++-4.4 g++-4.4-multilib gcc-4.4-multilib
cd /usr/binln -s gcc-4.4 gccln -s g++-4.4 g++gcc -vg++ -v
2、安装必要的软件包
sudo apt-get install git-coregnupg flex bison gperf libsdl-dev libesd0-dev libwxgtk2.6-devbuild-essential zip curl libncurses5-dev zlib1g-dev valgrind
3、jdk的安装和配置
安装好jdk后(注意:要根据主机的类型选择合适的jdk安装包),需要进行如下配置。
sudo vi /etc/profile 添加以下内容:
JAVA_HOME=/usr/lib/jvm/jdk1.6.0_26
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk1.6.0_26 /bin/java 300
sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/jdk1.6.0_26 /bin/javac 300
sudo update-alternatives --config java
4、Andriod的编译
(1)、解压源码包
tar -jxvfandroid_gingerbread_realv210_ver_1_0.tar.bz2
(2)、编译uboot
cdandroid_gingerbread_realv210_ver_1_0/bootable/uboot_smdkv210/
./build
编译过程中遇到以下问题:
在Ubuntu14.04 64位系统中已经安装了libc6:i386的库,编译Uboot时提示error while loading shared libraries: libz.so.1: cannot open shared object file: No such file or directory.
解决方法:
sudo apt-get install lib32z1
这样在uboot_smdkv210下将得到u-boot.bin文件。
(3)、编译andriod
在终端下进入andriod_gingerbread_realv210_ver_1_0目录,运行下面命令完成andriod的编译。
./build_andriod
编译过程中遇到以下问题:
问题1:
Checking build tools versions...
build/core/main.mk:76: ************************************************************
build/core/main.mk:77: You are attempting to build on a 32-bit system.
build/core/main.mk:78: Only 64-bit build environments are supported beyond froyo/2.2.
build/core/main.mk:79: ************************************************************
build/core/main.mk:80: *** stop. Stop
解决方法:
vi build/core/main.mk 将下面的部分:
73 ifeq ($(BUILD_OS),linux)
74 build_arch := $(shell uname -m)
75 ifneq (i686,$(findstring i686,$(build_arch)))
76 $(warning ************************************************************)
77 $(warning You are attempting to build on a 32-bit system.)
78 $(warning Only 64-bit build environments are supported beyond froyo/2.2.)
79 $(warning ************************************************************)
80 $(error stop)
81 endif
82 endif
改为如下所示:
73 ifeq ($(BUILD_OS),linux)
74 build_arch := $(shell uname -m)
75 # ifneq (i686,$(findstring i686,$(build_arch)))
76 # $(warning ************************************************************)
77 # $(warning You are attempting to build on a 32-bit system.)
78 # $(warning Only 64-bit build environments are supported beyond froyo/2.2.)
79 # $(warning ************************************************************)
80 # $(error stop)
81 # endif
82 endif
即可解决上述问题1。
问题2:
dalvik_system_Zygote.c:191:19: error: storage size of 'rlim' isn't known
解决方法如下:
添加头文件#include <sys/resource.h>到以下文件
dalvik/vm/native/dalvik_system_Zygote.cpp
问题3:
/usr/include/zlib.h:34:19: fatal error: zconf.h: No such file or directory
解决方法如下:
sudo ln -sfn /usr/include/x86_64-linux-gnu/zconf.h /usr/include/
问题4:
/usr/bin/ld: skipping incompatible /usr/lib/gcc/i486-linux-gnu/4.4.3/../../../libz.so when searching for -lz
/usr/bin/ld: skipping incompatible /usr/lib/gcc/i486-linux-gnu/4.4.3/../../../libz.a when searching for -lz
/usr/bin/ld: skipping incompatible /usr/lib/libz.so when searching for -lz
/usr/bin/ld: skipping incompatible /usr/lib/libz.a when searching for -lz
/usr/bin/ld: cannot find -lz
collect2: ld returned 1 exit status
make: *** [out/host/linux-x86/obj/lib/libneo_cgi.so] Error 1
解决方法如下:
sudo apt-get install lib32z1-dev
sudo apt-get install zlib1g-dev
(4) 编译完成
出现以下信息说明编译完成:
Total compile time is 16 seconds
[[[[[[[ Make ramdisk image for u-boot ]]]]]]]
ok success !!!
编译结束后便可以在android_gingerbread_realv210_ver_1_0/out/target/product/smdkv210下得到kernel.img , ramdisk-yaffs.img , userdata.img , system.img等镜像文件,分别是linux内核镜像文件,根文件系统镜像,data分区镜像,system分区镜像。
ubuntu14.04下Andriod2.3.1编译环境的搭建相关推荐
- linux qt搜狗输入法用不,Ubuntu14.04下搜狗输入法不支持Qt5环境
问题环境确认: 系统平台Ubuntu14.04/ 安装了搜狗输入法/ 安装Qt5.4.1 一般自定义下载来Qt软件包,安装之后,都会有这个问题,在Qt环境下或Qt Creator下不能切换输入法,也不 ...
- 完美解决Ubuntu16.04下配置vs code编译环境
Vs Code环境配置 引用文献 其他参考:在Ubuntu中安装VSCode并配置C/C++开发环境的方法步骤 sudo apt-get update //访问源列表,并读取软件列表 sudo apt ...
- Ubuntu14.04 下 OpenCV2.4.9 编译
1. 下载OpenCV2.4.9 解压到home/username/opencv/opencv2.4.9 2.安装cmake $sudo apt-get install cmake 3.编译openc ...
- ubuntu14.04下安装cudnn5.1.3,opencv3.0,编译caffe及配置matlab和python接口过程记录
已有条件: ubuntu14.04+cuda7.5+anaconda2(即python2.7)+matlabR2014a 上述已经装好了,开始搭建caffe环境. 1. 装cudnn5.1.3,参照: ...
- PHP学习记录第一篇:Ubuntu14.04下LAMP环境的搭建
PHP学习记录第一篇:Ubuntu14.04下LAMP环境的搭建 最近一段时间会学习一下PHP全栈开发,将会写一系列的文章来总结学习的过程,以自勉. 第一篇记录一下LAMP环境的安装 0. 安装Apa ...
- python ubuntu18.04 sublime_Ubuntu下Sublime配置python编译环境及新手使用指导:
Sublime下配置python编译环境及搭建虚拟环境:(windows下大致相同) 1.编译环境配置 2019-3-6更新教程,发现好像 官方网址打不开了,要改一下源才行. 解决办法: 点击 Pre ...
- Linux(Ubuntu14.04)下安装Anaconda和Spyder
Linux(Ubuntu14.04)下安装Anaconda是为了安装python所需要的各种库以及他们的环境配置. Spyder是使用python的IDE 安装python和pip 一般linux系统 ...
- 【SLAM】Ubuntu14.04下配置LSD-SLAM
本文记录了LSD-SLAM在Ubuntu14.04下的安装过程. 安装环境: Trusty (Ubuntu 14.04) amd64 ROS Indigo Igloo ORB-SLAM 文章目录 1. ...
- Ubuntu14.04下Neo4j图数据库官网安装部署步骤(图文详解)(博主推荐)
不多说,直接上干货! 说在前面的话 首先,查看下你的操作系统的版本. root@zhouls-virtual-machine:~# cat /etc/issue Ubuntu 14.04.4 LTS ...
最新文章
- 任何网络都能山寨!新型黑盒对抗攻击可模拟未知网络进行攻击 | CVPR 2021
- mysql char 和varchar哪种效率高_MySQL数据库中的字段类型varchar和char的主要区别是什么?那种字段的查找效率要高,为什么?...
- 20189218 2018-2019-2 《密码与安全新技术专题》第9周作业
- poj 2769 感觉♂良好 (单调栈)
- android 自定义actionbar,如何让android的actionbar浮动且透明
- Spark之 使用SparkSql操作mysql和DataFrame的Scala实现
- win环境sftp软件_WinSCP中文版
- Qt:Windows编程—Qt实现本地服务管理
- CF125E MST company (凸优化+MST)
- 【Android 初学】3、控件布局初步
- Linux用apt命令安装软件
- 一步步实现 仿制Android LOL多玩盒子(二) 物品装备相关
- vue 点击取消按钮关闭页面_vue 点击按钮弹窗,点击关闭按钮关闭弹窗。
- 绿色明珠--野三坡白草畔
- bzoj 5498: [2019省队联测]皮配【dp】
- 通过百度坐标获取地址
- Arduino Uno + APDS9930 实现手势控制LED灯亮灭、调光等
- 视频会议系统结构逻辑
- 深度学习-84:自动驾驶技术(L0-L5级别)
- 一个平凡的外国人,却对中国大爱无疆