zoukankan      html  css  js  c++  java
  • 【转】Android源码下载过程的一些注意事项

    原文网址:http://www.360doc.com/content/14/0113/11/11948835_344809459.shtml

    其它一些事项说明:

    1、在源代码下载过程中,我们在源代码下载目录看不到任何文件,打开“显示隐藏”,会看到一个名为.repo的文件夹,这个文件夹是用来保存Android源代码的“临时文件”

    2、文件最后下载接近完成时,会从.repo文件夹中导出Android源代码

    3、Android源代码下载完成后,我们可以看到Android源代码下载目录中会有

    bionic、bootable、build、cts、dalvik......这些文件夹,这些就是Android源代码

    4、若是必须关闭电脑停止下载,那么可以在源代码下载的终端中按Ctrl + C 或者 Ctrl + Z 停止源代码的下载,不会造成源代码的丢失或损坏

    5、相关问题的解决办法
     
    5.1 下载源代码可能会提示的错误
     
    5.1.1error: Exited sync due to fetch errors...
     
    方法一:自动或者手动停止源代码的下载,可以使用命令: repo sync 继续下载
     
    方法二:
    关于这个问题其实google是有说明的http://source.android.com/source/downloading.html,为了防止连接数过多,每个ip都需要认证。。。
    第一步:从这里 the password generator 获取用户名和密码,前提是你在之前填写了你的真实姓名和邮箱
    第二步:将上面的页面上以machine开头的两行复制到  ~/.netrc文件中
    第三步:repo init -u https://android.googlesource.com/a/platform/manifest  多了个“/a”
    然后就可以repo sync了
    特别注意.netrc文件是在用户的根目录下,root用户就是/目录下,如果没有的话就自己建一个,把权限改为 *00
     
    5.1.2若是出现这个错误:Exited sync due to gc errors 
    表示代码基本下载完,需要从repo里面导出来,但是git的版本太低,不支持1.72以下版本。
    添加这个源:deb http://ftp.de.debian.org/debian sid main。
    在终端中执行:gedit /etc/apt/source.list
    在文件的最后添加deb http://ftp.de.debian.org/debian sid main,并保存退出
    回到终端中执行:sudo apt-get update
    更新完后,安装高版本的git工具
    在终端中执行:sudo apt-get install git-core
     
    5.1.3.repo sync中遇到error:......checkout ....接一串hashnumber
    解决方法:进到它说提示的目录中,用git status显示文件,将修改过的文件删除掉,再重新repo sync
     
    5.1.4.repo sync中遇到:contains uncommitted changes
    解决方法:进到它说提示的目录中,使用git reset --hard命令
     
    5.1.5. 怎么对repo下的所有project执行git命令
    解决方法:repo forall -c git checkout -b    //该条命令会对repo下的project执行切换branch的命令
     
    5.1.6. 怎么切换到你想要的branch
    解决方法:git checkout branchName,比如 git checkout testBranch
     
    5.2安装编译环境的软件可能会出现的问题
     
    下列软件包有未满足的依赖关系: libasound2: 破坏: libasound2-plugins (< 1.0.24-0ubuntu3) 但是 1.0.22-0ubuntu6 正要被安装  libglib2.0-0: 破坏: gnome-control-center (< 1:3) 但是 1:2.30.0-0ubuntu4 正要被安装  ppp: 破坏: network-manager (<= 0.8.0.999-1) 但是 0.8-0ubuntu3 正要被安装E: 破损的软件包
    某些源有问题,为高版本 ubuntu的源 ,删除即可,如安装高版本的git所用的源就是ubuntu 10.4之后的源,用在10.04上就可以会有问题,引起此提示。
    在终端中执行:gedit /etc/apt/source.list
    把文件的最后 deb http://ftp.de.debian.org/debian sid main 删除,并保存退出
    回到终端中执行:sudo apt-get update
    再次重新安装编译环境的软件
     
    5.3、编译可能会遇到的问题:
     
    5.3.1运行make命令后,提示以下错误:/bin/bash: java: command not found
    首先检查是否确实安装了jdk,在终端中输入:java -version ,若是有安装jdk,就会显示jdk的版本信息,提示出错,说明没有安装jdk,那么就安装jdk。
    安装jdk后还是提示上面的错误信息,则按执行以下命令建立链接文件来解决问题:
    sudo ln -s /jdk1.6.0_21/bin/jar ~/bin/jar
    sudo ln -s /jdk1.6.0_21/bin/java ~/bin/java
    sudo ln -s /jdk1.6.0_21/bin/javac ~/bin/javac
    sudo ln -s /jdk1.6.0_21/bin/javah ~/bin/javah
    sudo ln -s /jdk1.6.0_21/bin/javadoc ~/bin/javadoc
    重新编译若还是提示一样的错误,再执行下面的命令:
    sudo ln -s /jdk1.6.0_21/bin/jar /bin/jar
    sudo ln -s /jdk1.6.0_21/bin/java /bin/java
    sudo ln -s /jdk1.6.0_21/bin/javac /bin/javac
    sudo ln -s /jdk1.6.0_21/bin/javah /bin/javah
    sudo ln -s /jdk1.6.0_21/bin/javadoc /bin/javadoc
    至此java的问题应该可以解决
     
    5.3.2 编译出现以下错误提示:
     
    ============================================
     
    Checking build tools versions...
     
    ************************************************************
     
    You are attempting to build with the incorrect version
     
    of java.
     
     Your version is: java version "1.6.0_24".
     
    The correct version is: Java SE 1.6.
     
     Please follow the machine setup instructions at
     
        https://source.android.com/source/download.html
     
    ************************************************************
     
    build/core/main.mk:141: *** stop。 停止。
     
    切换从普通用户登,然后修改源码目录的存取权限:chmod 777 src
     
    之后再运行编译命令再次编译
     
    5.3.3 No command 'lunch' found, did you mean:
     
    解决方法:
     
    运行以下命令:
     
    source build/envsetup.sh
     
    之后再次运行编译命令:lunch full-eng或lunch full-user ……..
     
    5.4运行模拟器可能会出现的问题:
     
    No command 'emulator' found, did you mean:
     
    编译成功之后,在终端运行emulator命令,却提示: 
     
    No command 'emulator' found, did you mean:
     
    Command 'qemulator' from package 'qemulator' (universe)
     
    emulator: command not found
     
    解决方法:
     
    重新运行以下命令:
     
    source build/envsetup.sh
     
    lunch full-eng
     
    之后再次运行 emulator  命令
  • 相关阅读:
    Windows UI自动化测试的XPATH实现
    Laravel修炼:服务容器绑定与解析
    swoole之memoryGlobal内存池分析
    Go语言的前景分析
    thinkphp5 编辑时 唯一验证 解决办法
    GIT配置多用户
    PHP 数组
    PHP 变量作用域
    PHP 使用 Swoole
    欢迎使用CSDN-markdown编辑器
  • 原文地址:https://www.cnblogs.com/wi100sh/p/4535560.html
Copyright © 2011-2022 走看看