想使用一下UBIFS文件系统,通过网络了解它需要相应的mtd-utility工具来支持,它们是mkfs.ubifs, ubinize, mtdinfo, ubiattach, ubidetach, ubiformat, ubimkvol, ubirmvol等。
下载mtd-utility-1.4.4.tar.bz2
- 1. ftp://ftp.infradead.org/../pub/mtd-utils/
-
2. $ tar jxf mtd-utility-1.4.4.tar.bz2
-
3. cd mtd-utility-1.4.4$
修改交叉编译
- $ vi common.mk
CROSS=arm_v5t_le-
$make
错误1:
mkfs.ubifs.c: 在函数 ‘add_inode_with_data’ 中:
mkfs.ubifs.c:1066: 错误:‘FS_COMPR_FL’ 未声明 (在此函数内第一次使用)
mkfs.ubifs.c:1066: 错误:(即使在一个函数内多次出现,每个未声明的标识符在其
mkfs.ubifs.c:1066: 错误:所在的函数内只报告一次。)
mkfs.ubifs.c:1068: 错误:‘FS_SYNC_FL’ 未声明 (在此函数内第一次使用)
mkfs.ubifs.c:1070: 错误:‘FS_IMMUTABLE_FL’ 未声明 (在此函数内第一次使用)
mkfs.ubifs.c:1072: 错误:‘FS_APPEND_FL’ 未声明 (在此函数内第一次使用)
mkfs.ubifs.c:1074: 错误:‘FS_DIRSYNC_FL’ 未声明 (在此函数内第一次使用)
mkfs.ubifs.c: 在函数 ‘add_dir_inode’ 中:
mkfs.ubifs.c:1145: 错误:‘FS_IOC_GETFLAGS’ 未声明 (在此函数内第一次使用)
mkfs.ubifs.c: 在函数 ‘add_file’ 中:
mkfs.ubifs.c:1331: 错误:‘FS_COMPR_FL’ 未声明 (在此函数内第一次使用)
mkfs.ubifs.c: 在函数 ‘add_non_dir’ 中:
mkfs.ubifs.c:1375: 错误:‘FS_IOC_GETFLAGS’ 未声明 (在此函数内第一次使用)
将内核的 cp include/linux/fs.h mtd-utility-1.4.4/include/linux/
错误2:
make[1]: 正在进入目录 `/home/cheney/tar/mtd-utility/mtd-utils-1.4.4/mkfs.ubifs'
mkdir -p /home/cheney/tar/mtd-utility/mtd-utils-1.4.4/arm_v5t_le/mkfs.ubifs/
arm_v5t_le-gcc -I../include -I../ubi-utils/include -D_FILE_OFFSET_BITS=64 -O2 -g -Wall -Wextra -Wwrite-strings -Wno-sign-compare -ffunction-sections -fdata-sections -Wl,--gc-sections -c -o /home/cheney/tar/mtd-utility/mtd-utils-1.4.4/arm_v5t_le/mkfs.ubifs/compr.o compr.c -g -Wp,-MD,/home/cheney/tar/mtd-utility/mtd-utils-1.4.4/arm_v5t_le/mkfs.ubifs/.compr.c.dep
compr.c:27:23: 错误: lzo/lzo1x.h:没有那个文件或目录
将之前编译的lzo的库的头文件全部复制到/home/cheney/tar/mtd-utility/mtd-utils-1.4.4/include/目录下面。
错误3:
/mkfs.ubifs/../lib -lmtd -lcrc32
/usr/sbin/v5t_le/bin/../lib/gcc/armv5tl-montavista-linux-gnueabi/4.2.0/../../../../armv5tl-montavista-linux-gnueabi/bin/ld: cannot find -llzo2
将之前编译好的lzo库copy到/usr/sbin/v5t_le/armv5tl-montavista-linux-gnueabi/lib目录下
终于编译通过!
- cheney@cheney-ubuntu:~/tar/mtd-utility/mtd-utils-1.4.4$ ls -R arm_v5t_le/
-
docfdisk flash_erase flash_otp_dump ftl_check lib nanddump nftldump rfddump sumtool
-
doc_loadbios flash_info flash_otp_info ftl_format mkfs.ubifs nandtest nftl_format rfdformat ubi-utils flashcp flash_lock flash_unlock jffs2dump mtd_debug nandwrite recv_image serve_image
-
-
arm_v5t_le/lib:
-
libcrc32.a libcrc32.o libfec.o libmtd.a libmtd_legacy.o libmtd.o
-
-
arm_v5t_le/mkfs.ubifs:
- mkfs.ubifs
-
-
arm_v5t_le/ubi-utils:
- ubinize ubirmvol ubiutils- ubiattach ubidetach ubimkvol ubinize.o ubirsvol ubicrc32 ubiformat ubinfo ubirename ubiupdatevol
阅读(4618) | 评论(0) | 转发(0) |