Difference between revisions of "Template:ROM-Maker-lite Introduce/zh"
(updated by API) |
(updated by API) |
||
(6 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
如果你定制了U-boot、Linux内核、文件系统,并且想基于自己定制的文件制作Linux系统映像文件 (以下简称为ROM文件),你可以选择用dd命令将带有你的应用程序和配置的SD卡的数据完整地拷贝出来,这种方法简单粗暴,但是效率不高。另外,你也可以使用FriendlyElec 提供的[https://pan.baidu.com/s/1DSd4XYXr1yGyQTdRNQNoOw rom-maker-lite]工具。<br><br> | 如果你定制了U-boot、Linux内核、文件系统,并且想基于自己定制的文件制作Linux系统映像文件 (以下简称为ROM文件),你可以选择用dd命令将带有你的应用程序和配置的SD卡的数据完整地拷贝出来,这种方法简单粗暴,但是效率不高。另外,你也可以使用FriendlyElec 提供的[https://pan.baidu.com/s/1DSd4XYXr1yGyQTdRNQNoOw rom-maker-lite]工具。<br><br> | ||
− | rom-maker-lite是一套通用的制作映像文件的脚本工具,目前支持为 H3/H5 系列的开发板制作Linux平台的sd/eflasher ROM文件(尚未支持Android) | + | rom-maker-lite是一套通用的制作映像文件的脚本工具,目前支持为 H3/H5 系列的开发板制作Linux平台的sd/eflasher ROM文件(尚未支持Android)。<br> |
+ | * <b>执行./mkimage.sh查看帮助信息:</b> | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
$ ./mkimage.sh | $ ./mkimage.sh | ||
Line 17: | Line 18: | ||
|- | |- | ||
| -c <filesystem type> || | | -c <filesystem type> || | ||
− | -c | + | -c 用于指定ROM Image内各分区的文件系统格式,对于H3/H5系列的开发板:<br> |
− | -c | + | -c 1表示使用“misc(bootloader) + fat32 boot.img + ext4 rootfs.img”布局,适用于FriendlyCore/Ubuntu/Debian/OpenWrt等sd ROM; <br> |
− | -c | + | -c 2表示使用"misc(bootloader) + fat32 boot.img + ext4 rootfs.img + exfat friendlyarm.img"布局,适用于eflasher ROM。 |
|- | |- | ||
− | | -m <partmap> || | + | | -m <partmap> || |
+ | -m 用于指定制作ROM时需要的partmap文件。<br> | ||
+ | partmap文件用于指定ROM Image的组成文件和分区的大小,不同的板子或者是同一板子不同版本的BSP使用的partmap文件是不一样的。 | ||
|- | |- | ||
| -d "<misc dir>;<partition1 dir>;<partition2 dir>;..." || | | -d "<misc dir>;<partition1 dir>;<partition2 dir>;..." || | ||
− | -d | + | -d 用于指定系统文件所在的目录,每个路径之间用“;”分割,对于H3/H5系列的开发板:<br> |
<misc dir>: 用于指定bootloader所在的目录路径;<br> | <misc dir>: 用于指定bootloader所在的目录路径;<br> | ||
<partition1 dir>: 用于指定boot分区的目录路径;<br> | <partition1 dir>: 用于指定boot分区的目录路径;<br> |
Latest revision as of 05:24, 18 July 2019
如果你定制了U-boot、Linux内核、文件系统,并且想基于自己定制的文件制作Linux系统映像文件 (以下简称为ROM文件),你可以选择用dd命令将带有你的应用程序和配置的SD卡的数据完整地拷贝出来,这种方法简单粗暴,但是效率不高。另外,你也可以使用FriendlyElec 提供的rom-maker-lite工具。
rom-maker-lite是一套通用的制作映像文件的脚本工具,目前支持为 H3/H5 系列的开发板制作Linux平台的sd/eflasher ROM文件(尚未支持Android)。
- 执行./mkimage.sh查看帮助信息:
$ ./mkimage.sh Usage: $ apt-get install tree exfat-utils dosfstools python3-tk $ ./mkimage.sh -c <filesystem type> -m <partmap> -d "<misc dir>;<partition1 dir>;<partition2 dir>;..." -c <filesystem type>: 1: misc(bootloader) + fat32 boot.img + ext4 rootfs.img 2: misc(bootloader) + fat32 boot.img + ext4 rootfs.img + exfat friendlyarm.img 3: misc(bootloader) + ext4 boot.img + ext4 rootfs.img
参数 说明 -c <filesystem type> -c 用于指定ROM Image内各分区的文件系统格式,对于H3/H5系列的开发板:
-c 1表示使用“misc(bootloader) + fat32 boot.img + ext4 rootfs.img”布局,适用于FriendlyCore/Ubuntu/Debian/OpenWrt等sd ROM;
-c 2表示使用"misc(bootloader) + fat32 boot.img + ext4 rootfs.img + exfat friendlyarm.img"布局,适用于eflasher ROM。-m <partmap> -m 用于指定制作ROM时需要的partmap文件。
partmap文件用于指定ROM Image的组成文件和分区的大小,不同的板子或者是同一板子不同版本的BSP使用的partmap文件是不一样的。-d "<misc dir>;<partition1 dir>;<partition2 dir>;..." -d 用于指定系统文件所在的目录,每个路径之间用“;”分割,对于H3/H5系列的开发板:
<misc dir>: 用于指定bootloader所在的目录路径;
<partition1 dir>: 用于指定boot分区的目录路径;
<partition2 dir>: 用于指定rootfs分区的目录路径;
最后的...表示就还可以接收更多的目录路径。当制作eflasher ROM时,就需要添加friendlyarm分区的目录路径;
- 准备工作
经测试过PC机 Ubuntu版本包括:
1) ubuntu-16.04.5-desktop-amd64.iso
2) ubuntu-18.04.1-desktop-amd64.iso
如果你当前PC机使用的Ubuntu系统无法成功执行出系统映像,请尝试切换到上面这两个版本的Ubuntu系统。
在开始制作系统映像前,必须先安装下列软件包:
$ apt-get install tree exfat-utils dosfstools python3-tk
由于制作系统映像需要root权限,请先切换到root用户:
$ su root