repo下载android源码
用最新的Ubuntu 16.04,请首先确保自己已经安装了Git.没安装的同学可以通过以下命令进行安装:
sudo apt-get install git git config –global user.email “[email protected]” git config –global user.name “test”
其中[email protected]为你自己的邮箱.
简要说明
android源码编译的四个流程:1.源码下载;2.构建编译环境;3.编译源码;4运行.下文也将按照该流程讲述.
源码下载
由于某墙的原因,这里我们采用国内的镜像源进行下载.
目前,可用的镜像源一般是科大和清华的,具体使用差不多,这里我选择清华大学镜像进行说明.(参考:科大源,清华源)
repo工具下载及安装
通过执行以下命令实现repo工具的下载和安装
mkdir ~/binPATH=~/bin:$PATHcurl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repochmod a+x ~/bin/repo
补充说明
这里,我来简单的介绍下repo工具,我们知道AOSP项目由不同的子项目组成,为了方便进行管理,Google采用Git对AOSP项目进行多仓库管理.在聊repo工具之前,我先带你来聊聊多仓库项目:
我们有个非常庞大的项目Pre,该项目由很多个子项目R1,R2,...Rn等组成,为了方便管理和协同开发,我们为每个子项目创立自己的仓库,整个项目的结构如下:
这里写图片描述
执行完该命令后,再使用make命令继续编译.某些情况下,当你执行jack-admin kill-server时可能提示你命令不存在,此时去你去out/host/linux-x86/bin/目录下会发现不存在jack-admin文件.如果我是你,我就会重新repo sync下,然后从头来过.
错误三:使用emulator时,虚拟机停在黑屏界面,点击无任何响应.此时,可能是kerner内核问题,解决方法如下:
执行如下命令:
通过使用kernel-qemu-armv7内核 解决模拟器等待黑屏问题.而-partition-size 1024 则是解决警告: system partion siez adjusted to match image file (163 MB >66 MB)
如果你一开始编译的版本是aosp_arm-eng,使用上述命令仍然不能解决等待黑屏问题时,不妨编译aosp_arm64-eng试试.
结束吧
到现在为止,你已经了解了整个android编译的流程.除此之外,我也简单的说明android源码的多仓库管理机制.下面,不妨自己动手尝试一下.
‘贰’ 下载android源码卡住了,怎么办我都repo sync好几次了,每次都卡在了这里。
没办法,只能 ctrl+c 或者ctrl+z 中断重新 repo sync 一次,我也是这样。
还有 一个办法,我已经找到解决方法了,直接挂全局代理,在网络里设置代理,让代理全局化。然后在repo sync 一次成功。至于用什么,最理想的自然是goagent
‘叁’ 求android源码下载地址,就像学学源码的原理
Google刚刚公布,稳定版的Android源代码已经公布,任何人都可以免费下载。Google希望通过公布源代码,电信运营商和手机制造商,乃至一般开发者们进一步深刻了解和利用Android系统,从而有益于该平台下的的发展。
看来T-Mobile G1不一定打得过iPhone,那么Android呢?
现在源代码公布在http://source.android.com/,SDK网站是http://code.google.com/android/
‘肆’ android源码下载操作是,repo出错!高手指点!
我碰到repo出的问题也是很多错误,采用了两个方式解决了,一个是换了OS版本为10.0.4,一个是升级了最新的repo版本,其中感觉换OS版本作用更大。把上述两个更新后,repo就没问题了
‘伍’ ubuntu 下载来的android源码(.repo)如何在window读取啊
嗯你repo sync同步出来就应该可以读取了啊
‘陆’ 如何从国内镜像获取android源代码
首先按帮助中的步骤下载repo工具:
[plain] view plain print?
curl https://storage-googleapis.lug.ustc.e.cn/git-repo-downloads/repo > ~/bin/repo
此时查看下载下来的repo文件可以发现其中的REPO_URL已经指向中科大镜像的地址,因此应该不需要修改:
[plain] view plain print?
REPO_URL = 'https://gerrit-googlesource.lug.ustc.e.cn/git-repo'
接下来运行如下命令初始化仓库
[plain] view plain print?
repo init -u git://mirrors.ustc.e.cn/aosp/platform/manifest
发现没有反应,很长时间后应该是超时才退出,报错说无法访问https://gerrit-googlesource.lug.ustc.e.cn/git-repo/clone.bundle
把这个地址放到浏览器上尝试发现也是超时无法访问,最后好像还是指到google的官网去了,感觉应该是因为缺了什么东西,没仔细研究。
但我发现中科大镜像的Git-repo实际上是可以正常访问的,因此最后使用如下方法:
1. 使用git clone命令直接从中科大镜像下载repo工具:
[plain] view plain print?
git clone https://gerrit-googlesource.lug.ustc.e.cn/git-repo
git clone成功后可以在git-repo目录下看到repo以及其他相关的脚本。
修改PATH环境变量将git-repo目录加入PATH
2. 修改REPO_URL
此时查看git clone下来的repo文件可以发现其中的REPO_URL还是指向google官网的,因此需要修改该文件指向中科大镜像:
[plain] view plain print?
REPO_URL = 'https://gerrit-googlesource.lug.ustc.e.cn/git-repo'
3. 初始化仓库
修改完repo文件后再运行repo init命令初始化仓库就可以成功了:
[plain] view plain print?
repo init -u git://mirrors.ustc.e.cn/aosp/platform/manifest
以后就可以使用repo sync命令同步源代码了,速度很快。
你试试看看
‘柒’ android源码下载完成后,其中的".repo"文件夹是源码的一部分吗可以删除吗
如果不再同步更新代码,可以删除。如果需要同步,就是repo sync,就不能删除。
‘捌’ linux中下载android源码前,repo init为啥总是提示 /bin/repo: permission denied
/bin/repo 没有执行权限
chmod 755 /bin/repo
‘玖’ 急!!我下载下来的android源码只有.repo一个文件夹,make命令也运行不了,请问有谁知道这是为什么吗
.repo 是yum的配置文件。。。
使用方法,前提是把IP配置对。。
然后yum -y install **软件名**