ubifs文件系统工具制作

ubifs文件系统工具制作

第一步:下载所需源码。

1、mtd-utils-1.5.0.tar.bz2(wget ftp://ftp.infradead.org/pub/mtd-utils/mtd-utils-1.5.0.tar.bz2)

2、lzo-2.06.tar.gz(http://www.oberhumer.com/opensource/lzo/download/)

3、zlib-1.2.5.tar.gz(http://www.zlib.net/fossils/)

4、e2fsprogs-1.42.tar.gz(https://sourceforge.net/projects/e2fsprogs/files/e2fsprogs/1.42/)

注释: 1、由于交叉编译mtd-utils,需要依赖(zlib,lzo)。
2、这些数据包的版本最好如上所述,否则可能会导致无法生成所需的文件或生成的文件不正确

第二步:在将下载的文件放到ubuntu目录下,我这里是放到了 /home/shzn/make-mtd-utils/目录下(根据自己的情况放置)
然后在该目录下新建一个目录:mkdir install (用于放置生成的文件,其中包括了最后生成的工具)

第三步:解压zlib-1.2.5.tar.gz,使用命令:zlib-1.2.5.tar.gz ,进入解压好的目录:cd zlib-1.2.5
使用命令:./configure --prefix=/home/shzn/make-mtd-utils/install (该目录是第二步中make-mtd-utils下新建的install目录) 接着打开其根目录下的 Makefile替换 gcc, ldshared, cpp, ar , ranlib 为如下:
使用命令:vi Makefile打开,修改编译器,具体内容为:

 	CC=arm-linux-gnueabihf-gcc
          	LDSHARED=arm-linux-gnueabihf-gcc -shared -Wl,-soname,libz.so.1,--version-script,zlib.map
	CPP=arm-inux-gnueabihf-gcc -E
	AR=arm-linux-gnueabihf-ar rc
	RANLIB=arm-linux-gnueabihf-ranlib

保存退出,然后编译分别使用命令:make 、 make install (注意:两个命令用" 、"顿号隔开了)
生成的 zlib.a 存放在 /home/shzn/make-mtd-utils/install/lib 中;
生成的 zlib 的头文件存放在 /home/shzn/make-mtd-utils/install/include中。
zlib安装完成!

第四步:解压lzo-2.06.tar.gz,使用命令:tar -xzvf lzo-2.06.tar.gz ,进入解压好的目录:cd lzo-2.06
使用命令:./configure --build=i686-pc-linux --prefix=/home/shzn/make-mtd-utils/install --host=arm-inux-gnueabihf
然后进行编译,分别使用命令:make 、 make install (注意:两个命令用" 、"顿号隔开了)
生成的 liblzo2.a 存放在 /home/shzn/make-mtd-utils/install/lib 中;
生成的 lzo 的头文件 存放在 /home/shzn/make-mtd-utils/install/include/lzo中
lzo安装完成!

第五步:解压e2fsprogs-1.42.tar.gz,使用命令:tar - xzvf e2fsprogs-1.42.tar.gz,进入解压好的目录:cd e2fsprogs-1.42
使用命令: ./configure --build=i686-pc-linux --prefix=/home/shzn/make-mtd-utils/install --host=arm-linux-gnueabihf
然后进行编译,分别使用命令:make 、make install (注意:两个命令用" 、"顿号隔开了)
编译完之后,进入到lib/uuid/目录下,使用命令:cd lib/uuid/
然后使用命令:make install
生成的 libuuid.a 存放在 /home/shzn/make-mtd-utils/install/lib 中;
生成的 uuid 的头文件 存放在/home/shzn/make-mtd-utils/install/include/uuid 中。
e2fsprogs安装完成!

第六步:解压mtd-utils-1.5.0.tar.bz2,使用命令:tar - xjvf mtd-utils-1.5.0.tar.bz2,进入解压好的目录:cd mtd-utils-1.5.0
打开其根目录下的Makefile,加入如下语句,在最后的地方添加:

	PREFIX = /home/shzn/make-mtd-utils/install
           	ZLIBCPPFLAGS = -I$(PREFIX)/include
           	LZOCPPFLAGS = -I$(PREFIX)/include
           	ZLIBLDFLAGS = -L$(PREFIX)/lib
          	LZOLDFLAGS = -L$(PREFIX)/lib
           	LDFLAGS += $(ZLIBLDFLAGS) $(LZOLDFLAGS)
           	CFLAGS ?= -O2 -g $(ZLIBCPPFLAGS) $(LZOCPPFLAGS)
           	CROSS=arm-linux-gnueabihf-

保存退出,然后编译分别使用命令:make WITHOUT_XATTR=1 、 make install (注意:两个命令用" 、"顿号隔开了)
交叉环境编译的MTD通用工具就存放在 /home/shzn/make-mtd-utils/install/sbin/中。
如mkfs.ubifs,ubinize 的工具(可执行文件)
至此,安装数据包应该算是完成了。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值