在我的一篇日志里面说到如何制作和使用Jffs2文件系统 ,但是遇到了困难!
如不容易从网上:http://down1.chinaunix.net/distfiles/mtd-snapshot-20050519.tar.bz2
下载了mtd snapshot源代码!
解压缩然后到mtd/util里面修改makefile,按着那个教程编译不能通过,老是报68行缺少有zlib.h。我的cross 是arm-linux-gcc 3.4.1。
最后百度寻找答案,终于成功了!
现在做出一个小小总结,希望对别人也有点用:
1、要编译mtd-snapshot-***.bz2必须要先安装交叉编译过的zlib ,这点非常重要,不然肯定不会成功。(我现在就是装在我的交叉编译器目录下/usr/local/arm-linux/)
2、修改mtd/util目录下的 Makefile,
$cd mtd/util
$vi Makefile
LDFLAGS := -L/usr/local/arm-linux/lib 【主要就是要添加这句】
CROSS=arm-linux-
CC := $(CROSS)gcc
...............
$make 就OK了。
不过,如果是比较早的mtd-snapshot,在编译mkfs.jffs2和jffs2reader目标时可能会出错,这是就需要把它们的编译命令从
$(CC) -o $@ $^ -lz 改成
$(CC) $(LDFLAGS) -o $@ $^ -lz
就好了。jffs2reader的情况也是一样,添加一个$(LDFLAGS)
呵呵!努力!