这里是64位Ubuntu 11.10系统,Android2.3.7源码。官网上有编译源码的指导,但实际还会遇到些问题。JDK安装就不说了,上一篇刚写过。
欢迎互相交流。
另,配置这些东西让我有些伤心,越配越消极。个把月前的编译还未成功,这次可是重装系统来的。
1)安装依赖的包
终端执行:
$ sudo apt-get install git-core gnupg flex bison gperf build-essential \
zip curl zlib1g-dev libc6-dev lib32ncurses5-dev ia32-libs \
x11proto-core-dev libx11-dev lib32readline-gplv2-dev lib32z-dev \
libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown \
libxml2-utils
$ sudo ln -s /usr/lib/i386-linux-gnu/libX11.so.6 /usr/lib/i386-linux-gnu/libX11.so
2)编译源码
进入源码目录:
$ . build/envsetup.sh
$ lunch
输入 : 1
$ make -j4
遇到的问题
a) frameworks/base/libs/utils/RefBase.cpp:507:67: error: passing ‘const android::RefBase::weakref_impl’ as ‘this’ argument of ‘void android::RefBase::weakref_impl::trackMe(bool, bool)’ discards qualifiers [-fpermissive]
解决方法:
进入源码目录frameworks/base/下,执行
$ git cherry-pick c4fbbe06
b) make: *** [out/host/linux-x86/obj/EXECUTABLES/obbtool_intermediates/Main.o] 错误 1
据说此处编译错误是由于ubuntu 11.10采用了
GCC4.6.1导致的。
修改源码目录下/build/core/combo/HOST_linux-x86.mk文件:
将以下语句
HOST_GLOBAL_CFLAGS += -D_FORTIFY_SOURCE=0
修改为
HOST_GLOBAL_CFLAGS += -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=0
3)编译完成
编译完成后会在out/target/product/generic目录下生成system.img, ramdisk.img, userdata.img三个镜像文件。
终于结束了,环境问题困扰了我好久,过程是蛋疼的,但现在还是有些快感的。工作日报都知道怎么写了,加班,搞点内容出来才行。
==========
参考
GCC(GNU Compiler Collection,GNU编译器套装),是一套由 GNU 开发的编程语言编译器。它是一套
以 GPL 及 LGPL 许可证所发行的自由软件,也是 GNU计划的关键部分,亦是自由的类Unix及苹果电脑 Mac OS X 操作系统的标准编译器。
GCC 原名为 GNU C 语言编译器,因为它原本只能处理 C语言。GCC 很快地扩展,变得可处理 C++。之后也变得可处理 Fortran、Pascal、Objective-C、Java, 以及 Ada与其他语言。
分享到:
相关推荐
android ubuntu 11.10 32 编译源码
32位Ubuntu11.10下android2.3.7源码下载与编译小结知识.pdf
ubuntu11.10(64位)虚拟linux系统下 ---修改编译android工程 工具是android应用签名app_signa
ubuntu+11.10+安装过程详解 能快捷安装
Ubuntu 11.10 搭建编译环境 这个都是deb包,直接上传运行就可以了 sudo dpkg -i *
ubuntu11.10环境搭建,tftp,nfs,samba,vmtool等的配置;
ubuntu11.10安装及网络配置,其中包括安装说明和网络配置两份文件
ubuntu 11.10下成功编译linux3.0.73
Ubuntu 11.10 安装方法全程记录
完全原创,Ubuntu 11.10系统安装,手把手带你安装每一步
Ubuntu11.10_12.04安装深度软件中心的方法.pdf
ubuntu 11.10 设置固定ip,需要vi /etc/network/interfaces。
本文档介绍在windows7上使用Win7+Ubuntu11.10(EasyBCD硬盘安装)来安装双系统,需要的朋友可以下载看看
详细介绍了ubuntu的安装过程,并且附有安装过程的照片
默认的 ubuntu 安装后对本地化的支持是不完整的,这很正常,ubuntu 的软件工程师们已经替我们做了绝大部分的工作,我们需要做的只是一点点细小的工作,来使我们的 ubuntu 更利于使用。以下所有软件都可以通过在...
针对Ubuntu下乱码问题,提出以下解决方案,实测成功。
Ubuntu 11.10 H3C iNode 客户端 H3C iNode 客户端 for Ubuntu 11.10
VMware下安装Ubuntu 11.10 全程图解
ubuntu11.10安装教程及设置,本人自己照此安装,非常详细!