zoukankan      html  css  js  c++  java
  • 利用国内镜像下载Android源码,并编译生成image镜像文件

    为了编译安卓源码,首先需要一个Linux,本次采用Ubuntu Kylin14.04,内核版本3.13。装在四核、4G内存、1T硬盘的虚拟机上
    查看内核版本号:
    $uname -all
    清华镜像地址
    清华镜像站的速度还是比较快的,地址:
    git://aosp.tuna.tsinghua.edu.cn/android/
    使用浏览器访问:
    http://aosp.tuna.tsinghua.edu.cn/android/

    下载 repo
    $git clone git://aosp.tuna.tsinghua.edu.cn/Android/git-repo.git/

    修改repo
    $vi /git-repo.git/repo
    google的地址
    REPO_URL = ‘https://gerrit.googlesource.com/git-repo’
    改为清华大学的地址
    REPO_URL = ‘git://aosp.tuna.tsinghua.edu.cn/android/git-repo’

    下载 manifest
    google 的地址
    $ repo init -u https://android.googlesource.com/platform/manifest
    改为清华大学的地址
    $ repo init -u git://aosp.tuna.tsinghua.edu.cn/android/platform/manifest
    如果需要设置版本,加入参数-b 安卓源码版本号即可。
    $ repo init -u https://aosp.tuna.tsinghua.edu.cn/platform/manifest -b android-4.0.1_r1


    同步源码
    $repo sync [-j4]
    后面-j4表示4个线程进行下载,清华镜像允许最多4线程下载,不要超过4个。
    如果中间发现断掉了或者报错了,不要紧张,重新运行一下。源码大小

    Set up environment(设置环境变量)

    Initialize the environment with the envsetup.sh script. Note that replacing source with . (a single dot) saves a few characters, and the short form is more commonly used in
    documentation.
    $ source build/envsetup.sh or $ . build/envsetup.sh


    Choose a Target(选择平台编译)

    Choose which target to build with lunch. The exact configuration can be passed as an argument. For example, the following command:$ lunch aosp_arm-eng

    refers to a complete build for the emulator, with all debugging enabled.

    If run with no arguments lunch will prompt you to choose a target from the menu.

    All build targets take the form BUILD-BUILDTYPE, where the BUILD is a codename referring to the particular feature combination.

    The BUILDTYPE is one of the following:


    Build the code(构建代码)

    Build everything with make. GNU make can handle parallel tasks with a -jN argument, and it's common to use a number of tasks N that's between 1 and 2 times the number of
    hardware threads on the computer being used for the build. For example, on a dual-E5520 machine (2 CPUs, 4 cores per CPU, 2 threads per core), the fastest builds are made
    with commands between make -j16 and make -j32.

    $ make -j4

    最后运行我们刚刚编译出来的android系统Run It!

    You can either run your build on an emulator or flash it on a device. Please note that you have already selected your build target with lunch, and it is unlikely at best to
    run on a different target than it was built for.

    Flash a Device(烧进一个真实的设备)

    To flash a device, you will need to use fastboot, which should be included in your path after a successful build. Place the device in fastboot mode either manually by holding
    the appropriate key combination at boot, or from the shell with

    $ adb reboot bootloader


    Once the device is in fastboot mode, run

    $ fastboot flashall -w


    The -w option wipes the /data partition on the device; this is useful for your first time flashing a particular device but is otherwise unnecessary.

    For more information about building for and running on actual hardware, see Running Builds.

    Emulate an Android Device(模拟一个安卓设备)

    The emulator is added to your path automatically by the build process. To run the emulator, type


    emulator模拟器能成功运行起来的前提是:成功将emulator所在的目录和 android编译完之后输出目录out下面的host和target目录都添加到了你的PATH环境变量了。
    并且执行source build/envsetup.sh ;lunch sdk-eng;这2个命令。


    $ emulator

  • 相关阅读:
    成都的收藏品市场
    微信小程序 如何定义全局函数?
    Linux下 安装VMware Tools工具
    小程序圆角进度条实现方法
    Excel 将换行符替换为空
    再次学习mysql优化
    Subl 命令
    时间见证着—eternal life
    大巧不工web前端设计修炼之道—笔记
    批量更新某字段内容
  • 原文地址:https://www.cnblogs.com/wxishang1991/p/5649517.html
Copyright © 2011-2022 走看看