根文件系统
4.7.1怎样添加文件到目标根文件系统,但是不创建一个包
您需要创建一个merge目录,这儿有2个选项:
1.顶层merge目录,适用于所有目标
2. 平台特定的merge目录
平台特定的merge目录会覆盖顶层的merge目录,也将覆盖rootfs中相应的文件。
例:您有一个git版本的LTIB,已经编译了tqm823l的默认配置,现在,您需要添加一个平台specific文件 /home/fred/myfile1;您想所有的平台可以编译使用您自己的/etc/hosts文件。下面给出如何完成的方法:
# cd <my_ltib_dir>
# mkdir -p config/platform/tqm823l/merge/home/fred
# cp <my_files>/myfile1 config/platform/tqm823l/merge/home/fred
# mkdir -p merge/etc
# cp <my_files>/hosts merge/etc
# ./ltib
第4,5步是加入一些配置到开发板如果不需要可以跳过。这个过程简单说就是建merge文件夹把要加的文件放到merge里执行./ltib。
您的merge文件夹中的文件将放置在rootfs相应的目录下。
4.7.2在同一时间,主机上可以有多于一个的根文件系统
系统为相同或不同的目标支持支持多个根文件系统。
如果你使用的是一个iso镜像,当安装脚本提示输入安装目录时,通过输入一个新目录名字安装您的ltib归档到不同的目录。
如果您使用git,克隆这个工程到不同的目录,例如:
# git clone git://git.am.freescale.net/git/ltib.git <directory>
如果目标体系结构与原来的一个不同,那么就需要一个不同的交叉编译器,如果当前没有该交叉编译器,它将被下载和安装在正确的位置。
4.7.3添加设备节点
设备节点与静态主要/次要编号可以被添加到ltib / bin / device_table.txt文件。该文件中自己描述了这种格式。
由于没有为device_tabl.txt的依赖项检查,添加一个新条目后,强制重新编译设备以确保新的/ dev节点存在于文件系统中:
# ./ltib -p dev -f
4.8 LTIB 生成的镜像文件
当执行完./ltib后,在安装目录下会生成以下几个镜像文件:
a) 根文件系统:
rootfs-文件夹,将要被部署到开发板上的根文件系统。用于NFS。
b) 引导文件
如果编译了bootloader,那么您可以在“rootfs/boot/”目录下找到,例如一些powerpc平台将产生以下的引导文件:
u-boot :elf版本的uboot,用于调试。
u-boot.bin :u-boot的二进制镜像,可以安装在flash里面。
c) 内核文件
如果编译了kernel,那么您可以在“rootfs/boot/”目录下找到,例如一些powerpc平台将产生以下的引导文件:
1 *vmlinux*:内核的elf镜像(如果编译适当可用于调试)
2 *uImage*: 可引导的内核镜像(名称取决于目标)
3 *System.map*: 编译内核的符号地址
4 *linux.config*: 用于内核编译的配置
rootfs.ext2.gz.uboot-能在开发板上使用的文件系统,可以被uboot识别。
rootfs/boot/uImage-uboot使用的内核映像。
在rootfs/boot/目录下包括如下文件:
u-boot, u-boot.bin,uImage(bootable_kernel),vmlinux,System.map, linux.config