zoukankan      html  css  js  c++  java
  • I.MX6 system.img unpack repack

    /*************************************************************************
     *                 I.MX6 system.img unpack repack
     * 说明:
     *     以前的system.img直接ext4的,现在的system.img是data类型的,需要工具
     * 进行转换才行,需要这些工具主要是还是为了减少开发中编译等待时间过长。
     *
     *                                     2016-9-10 深圳 南山平山村 曾剑锋
     ************************************************************************/
    
    一、参考文档:
        1. Android中system.img的两种格式及其相互转换方法
            http://www.th7.cn/Program/Android/201501/381202.shtml
        2. ext4 unpack/repack tools
            http://web.djodjo.org/article/download/android/tools/x86_linux/ext4tools
    
    二、执行命令:
        1. source ./build/envsetup.sh 
        2. make img2simg_host
    
    三、编译输出信息:
        ......
        including ./system/security/softkeymaster/Android.mk ...
        including ./system/vold/Android.mk ...
        including ./tools/external/fat32lib/Android.mk ...
        *** Overlay change detected, clean shared intermediate files...
        *** rm -rf out/target/common/obj/APPS/framework-res_intermediates out/target/common/obj/APPS/Launcher2_intermediates out/target/common/obj/APPS/SettingsProvider_intermediates out/target/common/obj/APPS/Settings_intermediates out/target/common/obj/APPS/Bluetooth_intermediates
        Import includes file: out/host/linux-x86/obj32/EXECUTABLES/img2simg_host_intermediates/import_includes
        Header: out/target/product/generic/obj/include/libexpat/expat.h
        Header: out/target/product/generic/obj/include/libexpat/expat_external.h
        Header: out/target/product/generic/obj/include/libpng/png.h
        Header: out/target/product/generic/obj/include/libpng/pngconf.h
        Header: out/target/product/generic/obj/include/libpng/pngusr.h
        Header: out/target/product/generic/obj/include/selinux/selinux.h
        Header: out/target/product/generic/obj/include/selinux/label.h
        Header: out/target/product/generic/obj/include/selinux/context.h
        Header: out/target/product/generic/obj/include/selinux/avc.h
        Header: out/target/product/generic/obj/include/selinux/android.h
        Header: out/target/product/generic/obj/include/libsonivox/eas.h
        Header: out/target/product/generic/obj/include/libsonivox/eas_types.h
        Header: out/target/product/generic/obj/include/libsonivox/eas_reverb.h
        Header: out/target/product/generic/obj/include/libsonivox/jet.h
        Header: out/target/product/generic/obj/include/libsonivox/ARM_synth_constants_gnu.inc
        Header: out/target/product/generic/obj/include/libwpa_client/wpa_ctrl.h
        Header: out/target/product/generic/obj/include/libwpa_client/qca-vendor.h
        host C: img2simg_host <= system/core/libsparse/img2simg.c
        Export includes file: system/core/libsparse/Android.mk -- out/host/linux-x86/obj32/EXECUTABLES/img2simg_host_intermediates/export_includes
        host Executable: img2simg_host (out/host/linux-x86/obj32/EXECUTABLES/img2simg_host_intermediates/img2simg)
        Install: out/host/linux-x86/bin/img2simg
    
    #### make completed successfully (03:18 (mm:ss)) ####
    
        zengjf@zengjf:~/myandroid$ 
    
    四、真正的img2simg
        1. 上面编译出来的img2simg还是有问题,会报如下错误:
            zengjf@zengjf:~/myandroid$ img2simg out/target/product/sabresd_6dq/obj/PACKAGING/systemimage_intermediates/system.img system.img
            img2simg: ../../core/libsparse/sparse.c:143: write_all_blocks: Assertion `pad >= 0' failed.
            Aborted (core dumped)
        2. 下载参考文档中的img2simg,验证可行。    
  • 相关阅读:
    屏幕录像大师2016【破解版】
    Hibernate demo之使用注解
    Hibernate demo之使用xml
    Hibernate 的<generator class="native"></generator>的不同属性含义
    java 动态实现接口
    c# emit 实现类的代理
    c# emit 动态实现接口
    java nio读取和写入文件
    java 读取Properties
    Java中利用MessageFormat对象实现类似C# string.Format方法格式化
  • 原文地址:https://www.cnblogs.com/zengjfgit/p/5858978.html
Copyright © 2011-2022 走看看