build cm10.1 for htc jetstream 2

这几天,同步问题一直在困扰着我,总是同步到99%的时候,报错。有时候是中途就停了。

用了以下解决办法:

1. 同步源代码困难(代理问题)。

症状:repo init or repo sync 失败同 http 错误一起,通常 403 或 500。

原因:这些是相当一点可能的原因,最常见的 http 代理关系,处理大量数据传输困难。

修理:这不是一般的解决方法,用 python 2.7 和明确的用 repo sync -j1 已经据报告为一些用户改善这个情况。

2. 同步源树困难(DNS 问题)。

症状:当运行 repo sync,这个过程失败和各个有关不承认主机名的错误。一个这样的错误是 <urlopen error [Errno -2] Name or service not known>

原因:一些 DNS 系统有很难复制大量查询参与到同步源树(可以是几百个请求在一个最差情况的场景)。

修理:手动解决有关的主机名,和本地硬编码这些结果。

你能解决它们用 nslookup 命令,将给你一个那些每个 IP 地址的数值(通常在”地址”部分”输出)。

$ nslookup googlesource.com $ nslookup android.googlesource.com

你能接着本地硬编码它们通过编辑 /etc/hosts,并且添加两行到这个文件,形式:

aaa.bbb.ccc.ddd googlesource.com eee.fff.ggg.hhh android.googlesource.com

注意,这仅仅工作,只要服务器地址不改变,并且假如它们工作和你不能连接,你将不得不解决这些主机名从而再一次并且编辑 etc/hosts 。

3. 同步源树困难(TCP 问题)。

症状:repo sync 挂起当同步时,常常当它完成同步 99% 。

原因:一些网络环境的 TCP/IP 堆设置导致困难,例如 repo sync 不完成也不失败。

修理:在 linux 上,sysctl -w net.ipv4.tcp_window_scaling=0。在 MacOS 上,禁用 rfc1323 扩展在网络设置。


评论

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注