mtd-utils 交叉编译

mtd-utils 交叉编译


最近移植发现busybox没有flash_erase 工具,自己交叉编译一套工具暂时使用,后期可以直接更改busybox重新生成文件系统烧录更改;

flash_erase 工具在mtd-utils 包 编译生成。而这个包还依赖于其他库,不管是真的或假的依赖,反正都一起编译了,采用版本mtd-utils-2.1.2.tar.bz2,其他库下载的时候看日期,看是不是和这个包的日期差不多早一点点的时间下载相关包,并且放到同一目录下。

采用交叉编译工具链是sigmastar的,交叉编译平台已经搭好。


1. 包下载

下载zlib

下载lzo

下载e2fsprogs

下载libuuid

下载mtd-utils


2. 交叉编译
2.1 zlib交叉编译
tar -xvzf zlib-1.2.11.tar.gz
cd ./zlib-1.2.11
CC=arm-linux-gnueabihf-sigmastar-9.1.0-gcc ./configure -share --prefix=$(pwd)/../output 
make 
make install

2.2 lzo交叉编译
tar -xvzf lzo-2.10.tar.gz
cd ./lzo-2.10
CC=arm-linux-gnueabihf-sigmastar-9.1.0-gcc  ./configure --host=arm-linux --enable-shared --prefix=$(pwd)/../output
make
make install

2.3 e2fsprogs交叉编译
tar -xvzf e2fsprogs-1.47.0.tar.gz
cd ./e2fsprogs-1.47.0
./configure --host=arm-linux --enable-elf-shlibs --prefix=$(pwd)/../output CC=arm-linux-gnueabihf-sigmastar-9.1.0-gcc
make 
make install
make install-libs

2.4 交叉编译libuuid
tar -xvzf libuuid-1.0.3.tar.gz
cd libuuid-1.0.3/
./configure --host=arm-linux --prefix=$(pwd)/../output CC=arm-linux-gnueabihf-sigmastar-9.1.0-gcc
make
make install

2.5 mtd-utils 交叉编译

配置过程会出现一些报错,提示ubifs jffs xattr相关的包没有,查看配置帮助将相关的功能关闭掉,

tar -xjvf mtd-utils-2.1.2.tar.bz2
cd ./mtd-utils-2.1.2
./configure --host=arm-linux --enable-shared --prefix=$(pwd)/../output CC=arm-linux-gnueabihf-sigmastar-9.1.0-gcc  CFLAGS="-I$(pwd)/../output/include" LDFLAGS="-L$(pwd)/../output/lib" --without-ubifs --without-xattr --without-jffs
make 
make install

生成的文件均在上级目录的output目录下,并且在sbin里查找到了flash_erase 和nandwrite 工具,拷贝到板端可以正常运行。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值