今天用repo获取android源码:
../bin/repo init -u git://android.git.kernel.org/platform/manifest.git
出现问题:
问题一:
Traceback (most recent call last):
File "./repo", line 590, in <module>
    main(sys.argv[1:])
File "./repo", line 557, in main
    _Init(args)
File "./repo", line 176, in _Init
    _CheckGitVersion()
File "./repo", line 205, in _CheckGitVersion
    proc = subprocess.Popen(cmd, stdout=subprocess.PIPE)
File "/usr/lib/python2.5/subprocess.py", line 594, in __init__
    errread, errwrite)
File "/usr/lib/python2.5/subprocess.py", line 1147, in _execute_child
    raise child_exception
OSError: [Errno 2] No such file or directory

原因:没有装git,faint
解决:
sudo apt-get install git
sudo apt-get install git-core

问题二:
装好了git,再次运行:
Traceback (most recent call last):
  File "/home/calvin/Android/Android2.0/source/.repo/repo/main.py", line 235, in <module>
    _Main(sys.argv[1:])
  File "/home/calvin/Android/Android2.0/source/.repo/repo/main.py", line 217, in _Main
    repo._Run(argv)
  File "/home/calvin/Android/Android2.0/source/.repo/repo/main.py", line 123, in _Run
    cmd.Execute(copts, cargs)
  File "/home/calvin/Android/Android2.0/source/.repo/repo/subcmds/init.py", line 223, in Execute
    self._ConfigureUser()
  File "/home/calvin/Android/Android2.0/source/.repo/repo/subcmds/init.py", line 165, in _ConfigureUser
    name  = self._Prompt('Your Name', mp.UserName)
  File "/home/calvin/Android/Android2.0/source/.repo/repo/project.py", line 306, in UserName
    self._LoadUserIdentity()
  File "/home/calvin/Android/Android2.0/source/.repo/repo/project.py", line 319, in _LoadUserIdentity
    u = self.bare_git.var('GIT_COMMITTER_IDENT')
  File "/home/calvin/Android/Android2.0/source/.repo/repo/project.py", line 1324, in runner
    p.stderr))
error.GitError: manifests var: 
*** Please tell me who you are.

Run

git config --global user.email "you@example.com"
  git config --global user.name "Your Name"

to set your account's default identity.
Omit --global to set the identity only in this repository.

fatal: empty ident  <calvin@lihao-desktop.(none)> not allowed

解决:
看来的告知自己的身份才行。
运行:
[calvin@lihao-desktop ~/Android/Android2.0/source 18:44:28]$ git config --global user.email "lihao921@gmail.com"
[calvin@lihao-desktop ~/Android/Android2.0/source 18:44:28]$ git config --global user.name "Cavin Lee"
再运行repo:
[calvin@lihao-desktop ~/Android/Android2.0/source 18:45:00]$ ../bin/repo init -u git://android.git.kernel.org/platform/manifest.git

Your Name  [Cavin Lee]: 
Your Email [lihao921@gmail.com]:

Your identity is: Cavin Lee <lihao921@gmail.com>
is this correct [y/n]? y

Testing colorized output (for 'repo diff', 'repo status'):
  black    red      green    yellow   blue     magenta   cyan     white 
  bold     dim      ul       reverse 
Enable color display in this user account (y/n)? y

repo initialized in /home/calvin/Android/Android2.0/source(出现这个提示说明成功了)

接下来同步代码:
[calvin@lihao-desktop ~/Android/Android2.0/source 18:54:50]$ ../bin/repo sync

问题三:
同步代码时不断出现诸如 “remote end hung up unexpectedly“错误:
Fetching projects:   1% (2/158)  
Initializing project platform/bootable/bootloader/legacy ...
fatal: The remote end hung up unexpectedly
error: Cannot fetch platform/bootable/bootloader/legacy
看样子是server的问题。
解决:
参考:http://android.amberfog.com/?p=230
http://code.google.com/p/android/issues/detail?id=4488

sudo gedit  .repo/repo/subcmds/sync.py
修改_Fetch函数为:

  def _Fetch(self, projects):
    fetched = set()
    pm = Progress('Fetching projects', len(projects))
    for project in projects:
      pm.update()
      while True:
       if project.Sync_NetworkHalf():
        fetched.add(project.gitdir)
        break
       else:
        print >>sys.stderr, 'error: Cannot fetch %s' % project.name
    pm.end()
    return fetched

注意代码缩进问题,相应的代码段缩进要完全一样。

(转)获取android源码时repo的错误的更多相关文章

  1. 获取android源码时repo的错误

    今天用repo获取android源码:../bin/repo init -u git://android.git.kernel.org/platform/manifest.git出现问题:问题一:Tr ...

  2. 获取android源码中遇到的问题

    最近项目相当紧张,回家之后还需要继续研究android源码. 从网上找了一些资料,下载过程中还是遇到了很多问题.这里罗列一下: 1. 下载Repo过程中提示证书问题: curl https://dl- ...

  3. Kernel.org 被黑,获取 Android 源码方法一则

    8 月底 9 月初,作为 Linux 的老窝,Kernel.org 被黑客攻击了,其攻击原因众说纷纭.一直以来 Linux 对于我来说不是很感兴趣,所以从来不会关注类似事件,可是这次这个攻击,却影响到 ...

  4. Android源码及repo下载——亲自测试下载源码成功!

    经过一段时间煞费苦心的下载都未能成功后,如今终于把android源代码下载成功,很是兴奋! 废话不多说,直接说下步骤: 1.安装git和curl:sudo apt-get install git-co ...

  5. MacOS10.9获取Android源码不完全笔记(2014)

    第一步:安装Macports 这个我就不叙述了,网上有无数教程 第二步:创建一个磁盘镜像 1.打开磁盘工具,然后: 第三步:使用Macport安装编译环境 1.打开终端输入以下内容 sudo port ...

  6. 【转】Android 源码编译make的错误处理--不错

    原文网址:http://blog.csdn.net/ithomer/article/details/6977386 Android源码下载:官方下载 或参考android源码下载方式 Android编 ...

  7. Android源码编译make的错误处理

    android源码下载:官方下载 或参考android源码下载方式 Android编译版本: PLATFORM_VERSION=4.0.1(最新Android 4.0.1) OS 操作系统平台: Li ...

  8. android 源码编译中的错误 解决

    1.编译种错误提示: arm-none-linux-gnueabi-gcc: directory: No such file or directory arm-none-linux-gnueabi-g ...

  9. jdk/java版本与Android源码编译中的错误

    错误一:javap未指向有效的java版本 Traceback (most recent call last): File "../../base/android/jni_generator ...

随机推荐

  1. java读取url中json文件中的json数据

    有时候需要远程从其他接口中获取json数据,如果遇到返回的json数据是一个文件而不直接是数据,那么可以通过以下方法进行读取: /** * 从数据接口获取到数据 * @return * @throws ...

  2. 解决maven构建webapp index.jsp报错问题

    今天早上想用maven 构建一个webapp 然后index.jsp华华丽丽的报错了  当时我的心情是一万头草泥马奔过啊,为啥你给我创建的webapp 还会报错啊!!!!!! 然后百度了一下,各种说少 ...

  3. Model層資料驗證

    概述 上节我们学习了Model的数据在界面之间的传递,但是很多时候,我们在数据传递的时候为了确保数据的有效性,不得不给Model的相关属性做基本的数据验证. 本节我们就学习如何使用 System.Co ...

  4. ASP.NET的一些小问题

    如何获取网站当前绝对路径? string path = HttpRuntime.AppDomainAppVirtualPath; 注:该路径结尾不含'/'.

  5. 基于Unity3d 引擎的Android游戏优化

    原文地址:http://blog.csdn.net/jixuguo/article/details/9018669 近期项目进入收尾阶段,之前对项目做了非常多优化,mesh合并 .降低DrawCall ...

  6. Firefox清空缓存的快捷键

    有时候调试网页,需要清空缓存,常用的firefox清空缓存的快捷键: Shift+Ctrl+Delete

  7. Animator根运动清除刚体速率问题测试

    在根运动打开时,施加AddForce,速率在后面几帧被清0了: 没有打开根运动AddForce的情况: unity论坛看了下,似乎有人遇到这个问题,而且无解.只能受力状态下关闭根运动 Q:Im wor ...

  8. [Linux] Ubuntu修改时区

    sudo apt-get install sysv-rc-confsudo dpkg-reconfigure tzdata

  9. ny236 心急的C小加 hdoj1051 Wooden Sticks

    心急的C小加 时间限制:1000 ms  |  内存限制:65535 KB 难度:4 描述 C小加有一些木棒,它们的长度和质量都已经知道,需要一个机器处理这些木棒,机器开启的时候需要耗费一个单位的时间 ...

  10. 九、Null在Java中的精确表示

    让我们从下面的语句开始: String x = null; 1.           这个语句具体的做了什么? 回一下什么是变量和什么是值.通常的比喻是变量类似于一个盒子. 就像你可以用盒子来存储东西 ...