/*************************************************************************
* I.MX6 system.img unpack repack
* 说明:
* 以前的system.img直接ext4的,现在的system.img是data类型的,需要工具
* 进行转换才行,需要这些工具主要是还是为了减少开发中编译等待时间过长。
*
* 2016-9-10 深圳 南山平山村 曾剑锋
************************************************************************/ 一、参考文档:
. Android中system.img的两种格式及其相互转换方法
http://www.th7.cn/Program/Android/201501/381202.shtml
. ext4 unpack/repack tools
http://web.djodjo.org/article/download/android/tools/x86_linux/ext4tools 二、执行命令:
. source ./build/envsetup.sh
. 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 (: (mm:ss)) #### zengjf@zengjf:~/myandroid$ 四、真正的img2simg
. 上面编译出来的img2simg还是有问题,会报如下错误:
zengjf@zengjf:~/myandroid$ img2simg out/target/product/sabresd_6dq/obj/PACKAGING/systemimage_intermediates/system.img system.img
img2simg: ../../core/libsparse/sparse.c:: write_all_blocks: Assertion `pad >= ' failed.
Aborted (core dumped)
. 下载参考文档中的img2simg,验证可行。

I.MX6 system.img unpack repack的更多相关文章

  1. I.MX6 working note for high efficiency

    /**************************************************************************** * I.MX6 working note f ...

  2. openWRT自学---对官方的开发指导文档的解读和理解 记录1:编译一个package

    针对的是:http://kamikaze.openwrt.org/docs/openwrt.html#x1-390002 1.If you want, you can also modify the ...

  3. I.MX6 initramfs.cpio.gz.uboot unpack

    /********************************************************************************* * I.MX6 initramfs ...

  4. i.mx6 Android5.1.1 System server

    1. 概述: 1. Zygote进程是Android Java世界的开创者,所有的Java应用程序进程都由Zygote进程创建: 2. Zygote创建应用程序进程过程其实就是复制自身进程地址空间作为 ...

  5. I.MX6 Android 5.1 快速合成系统

    /**************************************************************************** * I.MX6 Android 5.1 快速 ...

  6. I.MX6 WIFI wireless_tools 移植

    /******************************************************************************** * I.MX6 WIFI wirel ...

  7. I.MX6 ubuntu-core-14.04 Apache php mysql Qt5

    /*************************************************************************** * I.MX6 ubuntu-core-14. ...

  8. Python学习——struct模块的pack、unpack示例

    he struct module includes functions for converting between strings of bytes and native Python data t ...

  9. I.MX6 uSDHC SD card register

    /**************************************************************************** * I.MX6 uSDHC SD card ...

随机推荐

  1. HDU - 5572 An Easy Physics Problem (计算几何模板)

    [题目概述] On an infinite smooth table, there's a big round fixed cylinder and a little ball whose volum ...

  2. tcp-time-wait-state

    https://vincent.bernat.im/en/blog/2014-tcp-time-wait-state-linux

  3. 深入GCD(五):资源竞争

    概述我将分四步来带大家研究研究程序的并发计算.第一步是基本的串行程序,然后使用GCD把它并行计算化.如果你想顺着步骤来尝试这些程序的话,可以下载源码.注意,别运行imagegcd2.m,这是个反面教材 ...

  4. 使用uilabel重新自调整高度后显示横线和竖线问题

    这个使用uilabel自调节高度发现的问题,代码如下: //content label                        NSString *contentValue = ((Messag ...

  5. MongoDB副本集的原理,搭建

    介绍: mongodb副本集即客户端连接到整个副本集,不关心具体哪一台机器是否挂掉.主服务器负责整个副本集的读写,副本集定期同步数据备份,一旦主节点挂掉,副本节点就会选举一个新的主服务器,这一切对于应 ...

  6. POJ训练计划1035_Spell checker(串处理/暴力)

    Spell checker Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 18418   Accepted: 6759 De ...

  7. HDU 4791 Alice&#39;s Print Service 水二分

    点击打开链接 Alice's Print Service Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K ( ...

  8. java 短信猫发送短信的方法

    用java实现短信收发的功能,目前一般项目中短信群发功能的实现方法大致有下面三种: ·                 1. 向运行商申请短信网关,不需要额外的设备,利用运行商提供的API调用程序发送 ...

  9. HTML制作练习

  10. C#语言基础语句

    case,switch,break的使用 Console.WriteLine("1.汉堡"); Console.WriteLine("2.薯条"); Conso ...