ImageVerifierCode 换一换
格式:DOCX , 页数:7 ,大小:25.44KB ,
资源ID:5268279      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/5268279.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Ubuntu系统中下载并编译Android源代码.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

Ubuntu系统中下载并编译Android源代码.docx

1、Ubuntu系统中下载并编译Android源代码Ubuntu系统中下载并编译Android源代码版本号:1.0制定日期:11月9日编制陈东棋日期2010-11-27审核日期批准日期文档修订记录修订日期修订内容修订人目 录1 Ubuntu操作体统 31.1 Ubuntu操作系统简介 31.2 Ubuntu的几种安装方式 31.3 虚拟机中Ubuntu操作系统安装 41.4 Ubuntu操作系统配置 52 下载Android源码工具简介 62.1 Git的安装 72.2 repo的安装 72.3 下载Android源代码 83 Android源代码的编译 84运行编译结果 95总结 101 Ubu

2、ntu操作体统1.1 Ubuntu操作系统简介 Ubuntu是一个以桌面应用为主的Linux操作系统,其名称来自非洲南部祖鲁语或豪萨语的“ubuntu”一词(译为吾帮托或乌班图)。Ubuntu基于Debian发行版和GNOME桌面环境,与Debian的不同在于它每6个月会发布一个新版本。Ubuntu的目标在于为一般用户提供一个最新的、同时又相当稳定的主要由自由软件构建而成的操作系统。 Ubuntu系统有其一些不同于其他Linux系统的特色,这儿不作详尽的介绍,如需要进一步了解可以访问网站1.2 Ubuntu的几种安装方式 对于操作系统的安装熟悉计算机的人必不陌生,基本就是那两种方式,直接装在硬

3、盘里,或是先安装个虚拟机,然后在虚拟机里安装其他的操作系统。直接安装到硬盘里这种方式对于Linux的初学者并不推荐,容易产生不当操作使硬盘数据受损。所以还是推荐安装到虚拟机中,就能放心的摸索,探究。而我这里特意又提出操作系统的安装方式当然不是为了炒冷饭,而是想介绍Ubuntu系统的另一特色:Ubuntu 8.04 LTS在2008年04月24日最终发布,代号为Hardy Heron的Ubuntu 8.04正式发布的版本中包含了一个强大的功能:首次为Linux操作系统增加Wubi安装功能,该功能的最大优势就是允许用户把Ubuntu 8.04系统安装到Windows操作系统上,而不强制要求独立的硬

4、盘分区。Ubuntu不影响任何Windows操作系统设置,用户可以像卸载任何 Windows应用程序一样卸载Ubuntu系统。这项革命性的功能大大降低了新手安装Ubuntu的难度和风险,使得更多人有机会试用这一年轻的操作系统。这种方式我也尝试了一下,只要下载一个wubi.exe运行就能安装了,基本就是一键安装的难度。就是需要等的时间很长。下面给出一个wubi.exe的下载地址,想要尝试一下的可以下下来试试 。1.3 虚拟机中Ubuntu操作系统安装 上面介绍了Ubuntu系统的三种安装方式,不过我推荐的还是在虚拟机中安装,以下我将介绍我在虚拟机中安装Ubuntu系统的过程和经验。 首先是软件准

5、备了,这里我的虚拟机用的是VMware 6.5的,如果习惯用Virtualbox的这里我就不介绍了。Ubuntu我用的是ubuntu-9.10-alternate-i386.iso的镜像,在教育网的ftp上下载的,速度还不错,这儿给出链接 。下面就是安装了。 启动虚拟机,选择新建虚拟机,新建的时候选择“自定义”,选择自己的配置,客户机操作系统选择LinuxUbuntu,然后就是输入虚拟机名称,安装路径,选择处理器数量。然后即使分配虚拟机内存了,Android的开源网上推荐的是1.5G内存,10G硬盘空间,如果允许的话就尽量分的大一点吧。在选择虚拟机的网络连接的时候如果是校园网的内网的话就建议选

6、择NAT类型的。其他的配置也没有特别需要说明的了,一直下一步就好了。 虚拟机新建完了,然后就是真正的安装操作系统了,如果有安装盘的话可以从物理光驱安装,我这儿用的是ISO的镜像文件,点虚拟机可移动设备CD-ROM编辑,然后找到镜像文件所在的路径,填入即可。接着点击启动虚拟机即开始安装Ubuntu操作系统了。 安装的时候可以选择语言,有中文的,不过在这儿还是建议选择American English吧,因为可能以后在系统中会牵扯到各种配置什么的,要是遇到个不支持中文的,那麻烦又将会是一大堆。安装过程中没什么好说的,就是等待,其中有几个要用户选择的就是键盘布局默认是美式键盘这儿不用管,时区根据自己的

7、选择好就行了。还有就是填写系统登录的用户名和密码了。安装完成后重启系统就完成了。1.4 Ubuntu操作系统配置 安装完Ubuntu系统之后,我装的是9.10的,第一次启动系统的时候会提示升级,当然这个升级不是直接升级到最新的10.10,而是更新几个包。这个就让它自己安装完就行了。接下来就是为下载和编译源代码所作的配置环境的工作了,首先执行在终端中执行以下命令来安装几个包sudo apt-get install gcc g+ flex bison gperf libsdl1.2-dev libesd0-dev libwxgtk2.6-dev build-essential zip curl l

8、ibncurses5-dev zlib1g-dev valgrind 这里就用到了sudo命令上面已经介绍过其功能,这儿就不赘述了。注意,如果你装的是9.04版本的Ubuntu那么libsdl1.2-dev就要换成libsdl-dev。然后再就是安装JDK了,这儿选用JDK 5,不推荐用JDK 6因为之后会出现不支持的状况吧(据网友说,没有考证)。JDK的安装我这儿介绍两种方法,第一是从软件库中搜索然后在线安装,第二种是直接从sun的网站上下下来然后本地安装。先说第一种,因为Ubuntu9.10中默认是没有JDK5的安装源的,所以需要先加上安装源:1. deb jaunty main rest

9、ricted universe multiverse 2. deb-src jaunty main restricted universe multiverse 3. deb jaunty-updates main restricted universe multiverse 4. deb-src jaunty-updates main restricted universe multiverse 5. deb jaunty-backports main restricted universe multiverse 6. deb-src jaunty-backports main restri

10、cted universe multiverse 7. deb jaunty-security main restricted universe multiverse 8. deb-src jaunty-security main restricted universe multiverse 安装源更新完之后,用sudo apt-get install sun-java5-jdk安装JDK5。方法二:直接从官方网站上下载到需要的jdk1.5.0_20 linux版的,网站的链接为 ,平台选择为Linux ,点击continue之后进入到选择文件的页面,这儿需要注意的就是,有两个文件这儿需要选择

11、第一个,因为我用的是Ubuntu,而第二个是适合RedHat的,rpm即为RedHat programme manager。下载完成之后就直接点击安装即可。 JDK安装完之后需要配置环境变量,比如我将jdk安装在了目录usr/java/jdk1.5.0_20下。配置的时候在终端输入 : export JAVA_HOME=/usr/java/jdk1.5.0_20 export PATH=$PATH:$JAVA_HOME/bin export CLASSPATH=$JAVA_HOME/lib配置完之后在终端输入java version查看JDK版本号,若能正常显示版本号即为JDK安装配置成功。2

12、 下载Android源码工具简介 Git是Linux Torvalds(Linux之父)为了帮助管理Linux内核开发而开发的一个开放源码的分布式版本控制软件,它不同于Subversion、CVS这样的集中式版本控制系统。在集中式版本控制系统中只有一个仓库(Repository),许多个工作目录(Working Copy),而在Git这样的分布式版本控制系统中(其他主要的分布式版本控制系统还有BitKeeper、Mercurial、GNU Arch、Bazaar、Darcs、SVK、Monotone等),每一个工作目录都包含一个完整仓库,它们支持离线工作,本地提交可以稍后提交到服务器上。因为A

13、ndroid是由Kernel、Dalvik、Bionic、Prebuilt、build等多个项目组成,如果我们分别使用Git来逐个获取显得很麻烦,所以Android项目编写了一个名为Repo的Python的脚本来统一管理这些项目的仓库,使得项目的获取更加简单。在Ubuntu 9.10上安装Git只需要设定正确的更新源,然后使用apt-get就可以了,apt-get是一条Linux命令,主要用于自动从互联网的软件仓库中搜索、安装、升级、卸载软件或操作系统。下面就开始安装Git和repo。2.1 Git的安装 Git的安装很简单,只要一条命令就可以了sudo apt-get install git

14、-core curl这条命令会从互联网的软件仓库中安装git-core和curl。其中curl是一个利用URL语法在命令行方式下工作的文件传输工具,它支持很多协议,包括FTP、FTPS、HTTP、HTTPS、TELENT等,我们需要安装它从网络上获取Repo脚本文件。2.2 repo的安装 在安装repo之前先新建一个目录 mkdir android cd android mkdir bin cd bin 然后curl http:/android.git.kernel.org/repo repo 这条命令就会将repo脚本同步到bin目录下,然后执行sudo chmod a+x repo修改r

15、epo的权限,repo的下载也完成了,建议为repo命令修改环境变量,在.bashrc文件中加入如下:export PATH=$PTAH:/android/bin/这样以后用repo命令的时候就不用加上它的全路径了。接下来就是源代码的下载了。2.3 下载Android源代码 接上面的过程,输入命令cd . 退回到目录android下,然后新建一个目录用来放置android的源代码mkdir androidsrccd androidsrc进入到目录下,然后执行repo命令repo init -u git:/android.git.kernel.org/platform/manifest.git这

16、个命令用来初始化本地的版本库,这个过程完成之后会提示repo initialized in /androidsrc字样。接下来就是同步android源代码了,为什么要叫同步而不是下载呢,这个跟执行的命令有点关系,同步的命令是repo sync ,sync即为同步这个单词的缩写。这条命令会把android的整体源代码都下载到电脑上,如果只想下载android代码的某个工程,则可以不适用repo命令,只需要git命令就行了,例如git clone git:/android.git.kernel.org/kernel/common.git这个命令就可以下载到common这工程。另外如果我们想拿某个分

17、支版本的代码,而不是主线代码,需要使用-b参数指定branch的名字,比如:repo init u git:/android.git.kernel.org/platform/manifest.git b cupcake 。3 Android源代码的编译 编译命令很简单,如果需要的包都安装好了的话,就可以直接在android源代码的目录下执行命令make就可以,android的源代码很多打,编译一次需要3-4个小时。 这个过程如果顺利的话没什么好说的,如果出错了,很大原因可能是需要的包没有装好,其他细节等大家遇到的时候慢慢解决吧。这儿我要提出的就是单个android工程的编译方法,因为很多网络环

18、境下我们可能会下载android整体源代码失败只能下到部分工程的,而且就算你下到了android的整体源代码,如果你对某一部分修改了之后要重新编译的话,如果不会编译某一个工程那势必要将整个代码都编译一次,那又得是3-4个小时,可见效率了。 所以下面我就借鉴一些网友的经验,提出一个编译单个工程的方法。编译单个项目的方法如是在android源代码的根目录下执行下列命令:make ONE_SHOT_MAKEFILE= TARGET_PRODUCT= 其中: (1)module-name是所需要编译项目模块名称,这个名称是在项目的Android.mk文件中定义的,下面会说到; (2)path to A

19、ndroid是指项目的Android.mk的路径,是相对于android源码根目录的相对路径; (3)product-name是产品名称。 每个项目都有一个Android.mk文件,用于描述项目的模块名称、包含哪些源代码、项目编译结果的类型(动态链接库、静态链接库、可执行文件等)。 android就是通过find命令来查找整个源码树内所有Android.mk文件来完成编译的。Android.mk文件的内容需要符合一定的语法规 范。NDK的文档中有一个文件ANDROID-MK.TXT对这个语法规范有描述,可以参考一下。我用这个方法的时候出了个错,原因还是在于make命令提示不是可执行的命令,应该

20、还是需要的包没有装好吧。4运行编译结果在编译完整个项目后,如果我们需要观看编译后的运行效果,那么就需要在系统中安装模拟器android-sdk-linux_x86-1.1_r1,这个SDK的下载地址为:linux: mac: windows: 解压后需要把/usr/local/src/android-sdk-linux_x86-1.1_r1/tools目录加入到系统环境变量/etc/profile中。然后找到编译后android的目录文件out,我们发现在android/out/host/linux-x86/bin下多了很多应用程序,这些应用程序就是android得以运行的基础,所以我们需要把

21、这个目录也添加到系统PATH下,在$HOME/.profile文件中加入如下内容:PATH=”$PATH:$HOME/android/out/host/linux-x86/bin”接下来我们需要把android的镜像文件加载到emulator中,使得emulator可以看到android运行的实际效果,在$HOME/.profile文件中加入如下内容:ANDROID_PRODUCT_OUT=$HOME/android/out/target/product/genericexport ANDROID_PRODUCT_OUT然后重新启动机器。下面就可以进入到模拟器目录中并启动模拟器cd $HOME/android/out/target/product/genericemulator -image system.img -data userdata.img -ramdisk ramdisk.img5总结 以上给出了在Ubuntu系统中从下载android源代码到编译运行的整个过程,其中本人只亲自执行到了下载的部分,因为网络原因问题而下不到android的整体源代码,后面的编译和运行部分是参考了很多网友的帖子之后给出的一些方法,所以截图也比较少,如果大家亲自去尝试的话希望能和我交流遇到的问题和细节部分。参考文献1 2 3 4

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1