虽然我的标题注释为“原创”,但是主要方法的参考来。网址:
http://blog.163.com/ljf_gzhu/blog/static/13155344020106910285765/,此人必定是个大牛。
1. 下载源码包e2fsprogs,本人下载的版本是1.41.12:
http://sourceforge.net/projects/e2fsprogs/
2. 解压源码包到某个目录,本人的是:/root/Desktop/common;
3. cd进入到刚解压的源码目录,并建立新目录 release 用于安装编译连接后的程序;
4. cd进入release目录,并建立配置脚本configure-easy2440,根据我们的应用目标,配置选项中大部分采用默认配置,脚本内容如下:
#! /bin/sh
CC=arm-linux-gcc ../configure --enable-elf-shlibs --host=arm --prefix=/root/Desktop/common/e2fsprogs-1.41.12/release/
5. 输入命令chmod +x configure-easy2440,让脚本具有执行权限;
6. 执行脚本:./configure-easy2440
7. make
8. make install
9. 如果上面命令执行成功的话,会在release 目录里面生成 bin, sbin, lib 等目录;
10. 复制 bin 目录的所有程序到开发板的 /usr/bin 目录,复制 sbin 目录的所有程序到开发板的 /usr/sbin 目录,复制 lib 目录的所有动态库文件到开发板的 /usr/lib 目录;
11. 大功告成。
------------------------------------------------------------------------以上都为转载------------------------------------------------------------------
接着,是我移植后的个人总结。
1、嵌入式linux既然没有mkfs工具,那99%也没有make命令,至少我移植的嵌入式linux找不到make命令。所以以上无论是运行脚本还是make都应该在虚拟机中运行,也就是在虚拟机中编译mkfs源码。
2.其中第7步,我开始以为不是在release文件下make,尝试后,是运行脚本后,直接在release文件下make,紧接着make install
3.最后把虚拟机中文件拷贝到嵌入式设备相应文件夹下就可以。
4.还有我是
configure-easy2440命名成configure-easy2440.sh。运行脚本就可以这样:./configure-easy2440.sh
5.大致解释下
configure-easy2440.sh中的内容,也是网上看来的。
--enable-elf-shlibs:这会创建共享的库,供本包中的一些程序使用,所以需要拷贝lib文件下的.so文件
--host=arm
应该是运行环境 (交叉编译成arm)
6.最后还有一点,不能mkfs.vfat
你们成功没,至少我是成功了!