一、SG865W-WF模组说明

https://www.riswing.com/news/18.html
http://www.hasttech.com/product/53658990.html

二、编译环境配置及镜像编译

参照高通平台《SG865W-WF Android 镜像烧录指导》官方文档及同事总结的文档https://blog.csdn.net/weixin_43884836/article/details/136172689

1)安装基本的android镜像编译环境,如gcc、python等。
2)安装QPST 软件(刷机) USB驱动。

镜像打包完毕之后,解压Unpacking Tool,将镜像复制到解压文件夹子目录LINUX\android\out\target\product\kona中,运行build_qcs8250.sh

编译细节:
https://blog.csdn.net/tq501501/article/details/115403847

具体编译流程(无参)

https://www.yii666.com/blog/707984.html (**十分详细)
https://blog.csdn.net/tkwxty/article/details/111684291 (P、Q、R通用编译指南)

执行./build.sh不带任何参数,会执行full_build函数

function full_build () {
    build_qssi_only
    build_target_only
    # Copy Qssi system|product.img to target folder so that all images can be picked up from one folder
    command "cp $QSSI_OUT/system.img $OUT/"
    if [ -f  $QSSI_OUT/product.img ]; then
        command "cp $QSSI_OUT/product.img $OUT/"
    fi  
    merge_only
}

qssi模块与target模块

https://codeleading.com/article/21582274732/#google_vignette

qssi模块理解为system.img,target模块理解为其余的image。

使用ninja直接快速编译分区镜像

1.boot.img

进入out目录,在产品kona的ninja文件里查找boot.img目标。
ninja -f build-kona.ninja -n -t targets all | grep boot.img

注意,ninja文件不能是build-kona.ninja,ninja -f out/build-kona.ninja out/target/product/kona/boot.img,否则报错:
ninja: error: '_kati_always_build_', needed by 'NOTICE-HOST-SHARED_LIBRARIES-libc++', missing and no known rule to make it

正确的编译命令为:
ninja -f out/combined-kona.ninja out/target/product/kona/boot.img

  • 报错:ninja: error: 'out/soong/host/linux-x86/bin/mkbootimg', needed by 'out/host/linux-x86/obj/EXECUTABLES/mkbootimg_intermediates/mkbootimg', missing and no known rule to make it

解决办法:先要将systemc/core/mkbootimg模块使用mm命令编译一遍

2.system.img

nohup ninja -f out/combined-qssi.ninja out/target/product/qssi/system.img &

三、刷机

刷机有两种方式,通过QPST或者FASTBOOT。

QPST刷机时的问题

1.在选择xml时如果没有选择patch.xml,则刷的镜像会所有的分区都是只读的。

fastboot刷机时的问题

Google USB 驱动程序位于android_sdk\extras\google\usb_driver\

四、查看JDK版本

默认为jdk9


0 条评论

发表回复

您的电子邮箱地址不会被公开。