• 如何在Android 确定 lunch对应的内核配置


    如何在Android 确定 lunch对应的内核配置

    背景

    因为在调试中发现,user版本出现了一个userdebug版本上没有的bug。为了对比安卓 user版本与userdebug版本的差异,涉及到了内核配置,索性写篇文章,方便后续查阅。

    建议了解安卓编译系统有关知识,本文只是其中的一小部分。

    分析

    安卓编译流程为:

    $ source build/envsetup.sh
    $ lunch xx-user # $ lunch xx-userdebug
    $ make
    

    那么我们知道使用了哪些配置,就需要在lunch中做文章。

    熟悉安卓编译系统的人应该知道,所有的lunch项目都位于device目录(具体根据产商的不同而再进行细分)

    $ cd device
    $ ls 
    common  generic  google  qcom  sample
    
    $ ls google
    accessory  atv  contexthub
    

    那么就在这里进行查找lunch 对应的xx即可。例如 msm8909

    $ cd device
    $ find . 2>/dev/null | grep "msm8909" | grep AndroidBoard.mk
    
    # schips @ android in ~/Android7.1_R06_r5402/device [9:33:16]
    $ find . 2>/dev/null | grep "msm8909" | grep AndroidBoard.mk
    ./qcom/msm8909_512/AndroidBoard.mk
    ./qcom/msm8909w/AndroidBoard.mk
    ./qcom/msm8909/AndroidBoard.mk
    ./qcom/msm8909_LMT/AndroidBoard.mk
    

    找到对应的./qcom/msm8909/AndroidBoard.mk,其中的:

    #----------------------------------------------------------------------
    # Compile Linux Kernel
    #----------------------------------------------------------------------
    ifeq ($(KERNEL_DEFCONFIG),)
        ifeq ($(TARGET_BUILD_VARIANT),user)
          KERNEL_DEFCONFIG := msm8909-1gb-perf_defconfig # user版本
        else
          KERNEL_DEFCONFIG := msm8909-1gb_defconfig      # user-debug版本
        endif
    endif
    

    那么对应的就是:

    • kernel/arch/arm/configs/msm8909-1gb_defconfig
    • kernel/arch/arm/configs/msm8909-1gb-perf_defconfig

    OK,剩下来的就是细致的对比工作了。

    如果说我的文章对你有用,只不过是我站在巨人的肩膀上再继续努力罢了。
    若在页首无特别声明,本篇文章由 Schips 经过整理后发布。
    博客地址:https://www.cnblogs.com/schips/
  • 相关阅读:
    Android:Toast简单消息提示框
    Android:布局实例之模仿微信Tab
    Android:属性scaleType与图片的显示
    Android:TabHost实现Tab切换
    Android:requestWindowFeature应用程序窗体显示状态操作
    Android:控件WebView显示网页
    Android:通过Intent访问一个网页
    Android:控件Spinner实现下拉列表
    MongoDB命令
    javascript typeof 和 constructor比较
  • 原文地址:https://www.cnblogs.com/schips/p/how_to_make_sure_the_kernel_config_in_android_code_tree.html
Copyright © 2020-2023  润新知