cygwin环境下载android源码

cygwin 环境准备

打开http://www.cygwin.com/ 下载set-x86_64.exe。安装时选择国内镜像 http://mirrors.163.com

cygwin 安装时选择所有开发者选项。其它需要用到的工具有curl,vim,git 也需要全部选中安装。

curl ssl证书验证:

请求一个https 的api服务,看是否正常返回json数据

curl -i https://api.github.com/users/octocat/orgs

如果返回

curl: (77) error setting certificate verify locations:
  CAfile: C:\ruby\cacert.pem
  CApath: none

则执行以下命令

echo 'cacert=/etc/ssl/certs/ca-bundle.crt' > ~/.curlrc

再次请求api后,无错误提示,会正确返回json数据

HTTP/1.1 200 OK
Date: Tue, 15 Aug 2017 01:49:31 GMT
Content-Type: application/json; charset=utf-8
Content-Length: 5
Server: GitHub.com
Status: 200 OK
X-RateLimit-Limit: 60
X-RateLimit-Remaining: 57
X-RateLimit-Reset: 1502764991
Cache-Control: public, max-age=60, s-maxage=60
Vary: Accept
ETag: "98f0c1b396a4e5d54f4d5fe561d54b44"
X-GitHub-Media-Type: github.v3; format=json
Access-Control-Expose-Headers: ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval
Access-Control-Allow-Origin: *
Content-Security-Policy: default-src 'none'
Strict-Transport-Security: max-age=31536000; includeSubdomains; preload
X-Content-Type-Options: nosniff
X-Frame-Options: deny
X-XSS-Protection: 1; mode=block
X-Runtime-rack: 0.013540
Vary: Accept-Encoding
X-GitHub-Request-Id: C473:DA1A:1DE4A30:2E84DF1:59925328
[

]

android 源码下载配置

清华大学镜像安装教程 https://mirrors.tuna.tsinghua.edu.cn/help/AOSP/

不翻墙下载Android内核源码
http://blog.csdn.net/sunao2002002/article/details/53057374

建立当前用户的bin目录
mkdir ~/bin

建立源码存放的目录 在e盘下的的android目录

mkdir /cygdrive/e/android
cd /cygdrive/e/android

使用git clone下载 repo

git clone https://aosp.tuna.tsinghua.edu.cn/android/git-repo.git/

把git中的repo下载执行文件拷贝到用户的 bin目录中

cp git-repo/repo ~/bin/
chmod a+x ~/bin/repo

建立一个.repo目录,并且把git-repo重名为repo移动到该目录下

mkdir .repo
mv -r git-repo .repo/repo

打开bash

vim ~/.bashrc

在最后一行追加,repo 的镜像地址

export REPO_URL='https://mirrors.tuna.tsinghua.edu.cn/git/git-repo/'
export PATH=~/bin:$PATH

更新环境变量,使其立即生效

source ~/.bashrc

初始化仓库,查看各个版本号

repo init -u https://aosp.tuna.tsinghua.edu.cn/platform/manifest

初始化指定同步版本号

repo init -u https://aosp.tuna.tsinghua.edu.cn/platform/manifest -b android-7.1.2_r8

开始同步源码树

repo sync

同步源码的时候会出现一个错误

error: unable to create file tests/P_str_escape/str\\escape.rs: No such file or directory
Traceback (most recent call last):
  File "/cygdrive/e/androidsrc/.repo/repo/main.py", line 531, in <module>
    _Main(sys.argv[1:])
  File "/cygdrive/e/androidsrc/.repo/repo/main.py", line 507, in _Main
    result = repo._Run(argv) or 0
  File "/cygdrive/e/androidsrc/.repo/repo/main.py", line 180, in _Run
    result = cmd.Execute(copts, cargs)
  File "/cygdrive/e/androidsrc/.repo/repo/subcmds/sync.py", line 821, in Execute
    project.Sync_LocalHalf(syncbuf, force_sync=opt.force_sync)
  File "/cygdrive/e/androidsrc/.repo/repo/project.py", line 1327, in Sync_LocalHalf
    self._InitWorkTree(force_sync=force_sync)
  File "/cygdrive/e/androidsrc/.repo/repo/project.py", line 2486, in _InitWorkTree
    raise GitError("cannot initialize work tree")
error.GitError: cannot initialize work tree

解决方案:

打开e:\androidsrc\frameworks\compile\slang\tests\P_str_escape 目录,创建str 目录,并在str 目录中创建 escape.rs文件(文件内容为空)。

再次执行

repo --trace sync

自动动手编译Android源码及SDK
http://blog.csdn.net/dd864140130/article/details/51718187
搭建编译环境
https://source.android.com/source/initializing?hl=zh-cn

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 210,914评论 6 490
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 89,935评论 2 383
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 156,531评论 0 345
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,309评论 1 282
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,381评论 5 384
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,730评论 1 289
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,882评论 3 404
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,643评论 0 266
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,095评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,448评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,566评论 1 339
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,253评论 4 328
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,829评论 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,715评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,945评论 1 264
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,248评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,440评论 2 348

推荐阅读更多精彩内容