I.MX6 mkuserimg.sh 使用

/***********************************************************************
 *                  I.MX6 mkuserimg.sh 使用
 * 说明:
 *     每次都要对Android源码进行模块化编译的时候,经常会遇到要重新制作
 * system.img的问题,而普通的方式等待时间实在让人难以接受,而通过这个
 * mkuserimg.sh来直接完成对system目录的打包正符合要求。
 *
 *                                   2016-6-28 深圳 南山平山村 曾剑锋
 **********************************************************************/

一、参考文档:
    make_ext4fs制作system.img
        http://www.360doc.com/content/13/0419/13/12052771_279450163.shtml

二、解读shell命令:
    mkuserimg.sh out/target/product/sabresd_6dq/system out/target/product/sabresd_6dq/obj/PACKAGING/systemimage_intermediates/system.img ext4 system 293601280

三、步骤:
    1. 293601280 / 1024 / 1024 = 280M
    2. mkuserimg.sh out/target/product/sabresd_6dq/system out/target/product/sabresd_6dq/system.img ext4 system 293601280

四、reimg.sh
    echo "begin to make system.img"
    source build/envsetup.sh
    lunch sabresd_6dq-eng
    mkuserimg.sh out/target/product/sabresd_6dq/system out/target/product/sabresd_6dq/system.img ext4 system 293601280

五、运行现象:
    myzr@myzr:~/myandroid$ ./reimg.sh
    begin to make image
    including device/asus/grouper/vendorsetup.sh
    including device/asus/tilapia/vendorsetup.sh
    including device/fsl/imx5x/vendorsetup.sh
    including device/fsl/imx6/vendorsetup.sh
    including device/generic/armv7-a-neon/vendorsetup.sh
    including device/generic/armv7-a/vendorsetup.sh
    including device/generic/mips/vendorsetup.sh
    including device/generic/x86/vendorsetup.sh
    including device/lge/mako/vendorsetup.sh
    including device/samsung/maguro/vendorsetup.sh
    including device/samsung/manta/vendorsetup.sh
    including device/samsung/toroplus/vendorsetup.sh
    including device/samsung/toro/vendorsetup.sh
    including device/ti/panda/vendorsetup.sh
    including sdk/bash_completion/adb.bash

    ============================================
    PLATFORM_VERSION_CODENAME=REL
    PLATFORM_VERSION=4.2.2
    TARGET_PRODUCT=sabresd_6dq
    TARGET_BUILD_VARIANT=eng
    TARGET_BUILD_TYPE=release
    TARGET_BUILD_APPS=
    TARGET_ARCH=arm
    TARGET_ARCH_VARIANT=armv7-a-neon
    HOST_ARCH=x86
    HOST_OS=linux
    HOST_OS_EXTRA=Linux-3.2.0-29-generic-x86_64-with-Ubuntu-12.04-precise
    HOST_BUILD_TYPE=release
    BUILD_ID=1.1.0-rc3
    OUT_DIR=out
    ============================================

    + echo 'in mkuserimg.sh PATH=/usr/java/jdk1.6.0_45/bin:/home/myzr/myandroid/out/host/linux-x86/bin:/home/myzr/myandroid/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.6/bin:/home/myzr/myandroid/prebuilts/gcc/linux-x86/mips/mipsel-linux-android-4.6/bin:/home/myzr/myandroid/development/emulator/qtools:/home/myzr/myandroid/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.6/bin:/home/myzr/myandroid/prebuilts/gcc/linux-x86/arm/arm-eabi-4.6/bin:/home/myzr/myandroid/development/scripts:/home/myzr/myandroid/bootable/bootloader/uboot-imx/tools:/usr/local/netpbm/bin:/usr/java/jdk1.6.0_45/bin:/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/java/jdk1.6.0_45/jre/bin:/opt/FriendlyARM/toolschain/4.4.3/bin:/home/myzr/Downloads/node-v4.4.5-linux-x64/bin'
    in mkuserimg.sh PATH=/usr/java/jdk1.6.0_45/bin:/home/myzr/myandroid/out/host/linux-x86/bin:/home/myzr/myandroid/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.6/bin:/home/myzr/myandroid/prebuilts/gcc/linux-x86/mips/mipsel-linux-android-4.6/bin:/home/myzr/myandroid/development/emulator/qtools:/home/myzr/myandroid/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.6/bin:/home/myzr/myandroid/prebuilts/gcc/linux-x86/arm/arm-eabi-4.6/bin:/home/myzr/myandroid/development/scripts:/home/myzr/myandroid/bootable/bootloader/uboot-imx/tools:/usr/local/netpbm/bin:/usr/java/jdk1.6.0_45/bin:/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/java/jdk1.6.0_45/jre/bin:/opt/FriendlyARM/toolschain/4.4.3/bin:/home/myzr/Downloads/node-v4.4.5-linux-x64/bin
    + ENABLE_SPARSE_IMAGE=
    + '[' out/target/product/sabresd_6dq/system = -s ']'
    + '[' 5 -ne 4 -a 5 -ne 5 -a 5 -ne 6 ']'
    + SRC_DIR=out/target/product/sabresd_6dq/system
    + '[' '!' -d out/target/product/sabresd_6dq/system ']'
    + OUTPUT_FILE=out/target/product/sabresd_6dq/system.img
    + EXT_VARIANT=ext4
    + MOUNT_POINT=system
    + SIZE=293601280
    + FC=
    + case $EXT_VARIANT in
    + '[' -z system ']'
    + '[' -z 293601280 ']'
    + '[' -n '' ']'
    + MAKE_EXT4FS_CMD='make_ext4fs   -l 293601280 -a system out/target/product/sabresd_6dq/system.img out/target/product/sabresd_6dq/system'
    + echo make_ext4fs -l 293601280 -a system out/target/product/sabresd_6dq/system.img out/target/product/sabresd_6dq/system
    make_ext4fs -l 293601280 -a system out/target/product/sabresd_6dq/system.img out/target/product/sabresd_6dq/system
    + make_ext4fs -l 293601280 -a system out/target/product/sabresd_6dq/system.img out/target/product/sabresd_6dq/system
    Creating filesystem with parameters:
        Size: 293601280
        Block size: 4096
        Blocks per group: 32768
        Inodes per group: 5984
        Inode size: 256
        Journal blocks: 1120
        Label:
        Blocks: 71680
        Block groups: 3
        Reserved block group size: 23
    Created filesystem with 1185/17952 inodes and 49793/71680 blocks
    + '[' 0 -ne 0 ']'
    myzr@myzr:~/myandroid$
        

 

时间: 2024-07-30 03:58:12

I.MX6 mkuserimg.sh 使用的相关文章

I.MX6 mkuserimg.sh hacking

/*********************************************************************** * I.MX6 mkuserimg.sh hacking * 说明: * 上次发现Android源码使用mkuserimg.sh来打包Android文件系统,现在来 * 跟踪一下其内部的工作机制. * * 2016-6-28 深圳 南山平山村 曾剑锋 ***************************************************

I.MX6 android mkuserimg.sh

/************************************************************************** * I.MX6 android mkuserimg.sh * 说明: * 修改了android源代码中的一些内容之后,如果内容过多,不能确定到底修改 * 了system目录下的哪些文件,于是可能要重新make,但这实在是让人难以接受, * 因为等待的时间会很长,于是从make命令最后看到mkuserimg.sh是用来最后对文件 * 系统进行打包的

I.MX6 Android 5.1 快速合成系统

/**************************************************************************** * I.MX6 Android 5.1 快速合成系统 * 说明: * Android源代码编译系统是一件很痛苦的事,主要是在修改了一些很小的东西,但 * 要重新编译,要等很久才能编译完,如使用了mmm编译完,只是要打包一下system.img * 就行了,没必要去做那么多检查编译工作,所以这里跟一下系统合成原来,再精简 * 一下,做一个快速合

linux ext4 格式问题,求高手帮忙,急……

问题描述 linux ext4 格式问题,求高手帮忙,急-- 打包成ext4格式是包如下错,测试需要打包的文件内容几十M时,不出错. 猜想是Linux默认配置参数的问题,百度,Google没找到答案.高手帮忙解决下,急-- ./mkuserimg.sh -s serverlog system7.img.ext4 ext4 1190M in mkuserimg.sh PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:

can't set android permissions - built without android support

/**************************************************************************** * can't set android permissions - built without android support * 说明: * 昨天在使用Ubuntu自带的mkuserimg打包Android ext4镜像时出现这个错误,今天 * 找一下原因,解决一下. * * 2016-9-10 深圳 南山平山村 曾剑锋 *********

I.MX6 Manufacturing Tool V2 (MFGTool2) Emmc mksdcard.sh hacking

#!/bin/sh # 参考文章: # 1. MFGTool Emmc mksdcard.sh MFGTool Emmc mksdcard.sh comment # http://jordonwu.github.io/blog/2015/05/14/mfgtool-emmc-mksdcard-dot-sh/ # 2. linux sfdisk partition # http://blog.csdn.net/shell_albert/article/details/8425530 #<!-- p

I.MX6 Manufacturing Tool V2 (MFGTool2) Emmc mksdcard-android.sh hacking

#!/bin/bash # 参考文章: # 1. Shell特殊变量:Shell $0, $#, $*, $@, $?, $$和命令行参数 # http://c.biancheng.net/cpp/view/2739.html # <CMD state="Updater" type="push" body="send" file="mksdcard-android.sh.tar">Sending partition

I.MX6 working note for high efficiency

/**************************************************************************** * I.MX6 working note for high efficiency * * 主要是将在I.MX6 Android工作中的用到的特殊需求用法的记录,并对boot.img * 分解.合成进行了说明,另外增加了一个shell脚本自动完成boot.img合成与拷贝. * * 深圳 南山平山村 晴 2015/05/13 周三 曾剑锋 **

I.MX6 linux kernel编译错误处理

/******************************************************************************** * I.MX6 linux kernel编译错误处理 * 声明: * 本文仅仅是对I.MX6的linux内核编译出错,记录其对应的处理方法. * * 2015-10-15 晴 深圳 南山平山村 曾剑锋 *******************************************************************