一、获取源码并解压
存储于/home/zhangyi/work/psoc_ltp/tools-ltp-ddt中,解压后的源码存于上一层目录。
1.mtd-utils-2.0.0
wget ftp://ftp.infradead.org/pub/mtd-utils/mtd-utils-2.0.0.tar.bz2
tar -jxvf mtd-utils-2.0.0.tar.bz2 -C ..#解压到上一层目录
#wget ftp://ftp.infradead.org/pub/mtd-utils/mtd-utils-1.4.5.tar.bz2
#tar -jxvf mtd-utils-1.4.5.tar.bz2 -C .. #解压到上一层目录
2.zlib-1.2.11
wget http://www.zlib.net/zlib-1.2.11.tar.gz
tar -zxvf zlib-1.2.11.tar.gz -C ..#解压到上一层目录
.3.lzo-2.04
#wget http://www.oberhumer.com/opensource/lzo/download/lzo-2.10.tar.gz
#tar -zxvf lzo-2.10.tar.gz
wget http://www.oberhumer.com/opensource/lzo/download/lzo-2.04.tar.gz
tar -zxvf lzo-2.04.tar.gz -C ..
4.e2fsprogs-1.41.14
#wget http://sourceforge.net/projects/e2fsprogs/files/e2fsprogs/v1.41.14/e2fsprogs-1.41.14.tar.gz
#tar -xzf e2fsprogs-1.41.14.tar.gz -C ..#无法解压
git clone git://git.kernel.org/pub/scm/fs/ext2/e2fsprogs.git #git下来的是源码,非压缩包
cp -R e2fsprogs/ ..
编译安装前,先建立一个安装目录。
cd /home/zhangyi/work/psoc_ltp
mkdir mtdutils
二、编译安装zlib
cd ./zlib-1.2.11/
#./configure --prefix=$PWD/install_dir
export CC=arm-linux-gnueabihf-gcc #否则编译出x86架构的,在编译mtd_utils时候会报错libz.so file not recognized: File format not recognized
./configure --prefix=/home/zhangyi/work/psoc_ltp/mtdutils --static
make && make install
三、编译安装lzo-2.10
cd ./lzo-2.10/
#./configure --prefix=$PWD/install_dir --host=arm-linux
./configure CC=arm-linux-gnueabihf-gcc --prefix=/home/zhangyi/work/psoc_ltp/mtdutils --host=arm-linux --enable-static
#注意之前是./configure --prefix=../mtdutils 提示configure: error: expected an absolute directory name for --prefix: ../mtdutils 所以还是绝对地址比较靠谱
2.10之前的版本configure会碰到ACC conformance test failed问题。
make && make install
四、编译安装e2fsprogs-1.41.14
./configure CC=arm-linux-gnueabihf-gcc --host=arm-linux --prefix=/home/zhangyi/work/psoc_ltp/mtdutils
cd lib/uuid/
make && make install
五、编译安装mtd-utils-2.0.0
#cd ./mtd-utils-1.4.5/
#export ZLIBCPPFLAGS=-I/home/zhangyi/work/psoc_ltp/mtdutils/include
#export ZLIBLDFLAGS=-L/home/zhangyi/work/psoc_ltp/mtdutils/lib
#export LZOCPPFLAGS=-I/home/zhangyi/work/psoc_ltp/mtdutils/include/lzo
#export LZOLDFLAGS=-L/home/zhangyi/work/psoc_ltp/mtdutils/lib
export LDFLAGS="$ZLIB_LIBS $LZO_LIBS $UUID_LIBS -luuid -lz"