• Android编译过程中的碎碎念


    刷机不是用rom包吗?怎么可以使用fastboot flashall -w将*.img文件刷入呢?

    在Mac上面可以参考这篇文章进行刷机.概括来说解释从官方下载rom包,解压后运行./flash-all.sh脚本。在这里我下载了Nexus 6p的官方的rom包,我们看看这个文件中的内容是什么?
    下面就是脚本文件的内容

    fastboot flash bootloader bootloader-angler-angler-02.45.img
    fastboot reboot-bootloader
    sleep 5
    fastboot flash radio radio-angler-angler-02.50.img
    fastboot reboot-bootloader
    sleep 5
    fastboot -w update image-angler-mmb29p.zip
    

    image-angler-mmb29p.zip又是什么呢?解开后就是这么几个文件:

    android-info.txt boot.img cache.img recovery.img system.img userdata.img vendor.img

    有没有很熟悉,其实就是我们编译后,生成的几个Image文件。

    Nexus 6P 怎么没有提供驱动包呢?到哪里去下载呢?

    在制作rom包的过程中,我们还需要特定Nexus机器的驱动包,因为这些驱动包不属于AOSP,需要单独下载跟其他AOSP产生的*.img文件一起打包才成为一个完整的rom包.以往的驱动包,google都会提供,这次的驱动包google没有提供了.从Hamilton Turner的回答中,我们知道Nexus 5x/6p的刷机包中驱动不再是必须的,因为这两款机型中所有的驱动都存在于一个单独的vendor分区,因此没有必要在编译的时候就放入system.img中。

    执行lunch命令的时候,弹出Can not find SDK 10.6错误

    具体的错误如下所示:

    myhost:android-4.4.4_r2.0.1 carl$ lunch aosp_x86-eng
    build/core/combo/HOST_darwin-x86.mk:65: *****************************************************
    build/core/combo/HOST_darwin-x86.mk:66: * Can not find SDK 10.6 at /Developer/SDKs/MacOSX10.6.sdk
    build/core/combo/HOST_darwin-x86.mk:67: *****************************************************
    build/core/combo/HOST_darwin-x86.mk:68: *** Stop..  Stop.
    

    具体错误的原因是,在编译脚本中会检查当前的Xcode sdk的版本是否是兼容的,这可能是因为你mac上的xcode版本比较新,在Android源代码中还没有添加上.理论上说应该用Android代码对应的Xcode SDK版本来编译,不然可能会有兼容性的问题。但是我自己实测最新的xcode版本是可以正常编译Android源代码的,具体的方法如下所示:
    你可以到Xcode的sdk路径下(/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs)查看当前系统的SDK版本是多少。比如我的SDK版本是MacOSX10.11.sdk,接下来编辑build/core/combo/mac_version.mk中的mac_sdk_versions_supported所在的行添加10.11就行了。在运行下lunch命令,是不是就好了。

  • 相关阅读:
    POJ 1469 COURSES 二分图最大匹配
    POJ 1325 Machine Schedule 二分图最大匹配
    USACO Humble Numbers DP?
    SGU 194 Reactor Cooling 带容量上下限制的网络流
    POJ 3084 Panic Room 求最小割
    ZOJ 2587 Unique Attack 判断最小割是否唯一
    Poj 1815 Friendship 枚举+求最小割
    POJ 3308 Paratroopers 最小点权覆盖 求最小割
    1227. Rally Championship
    Etaoin Shrdlu
  • 原文地址:https://www.cnblogs.com/kissazi2/p/5244438.html
Copyright © 2020-2023  润新知