您的位置:首页 > 运维架构 > Linux

构建嵌入式Linux系统-存储设备管理

2007-04-07 14:32 741 查看
 

构建嵌入式Linux系统-存储设备管理

转自:http://hahaxixi.blogeden.cn/post/143796/4866 http://www.linuxsir.org/bbs/showthread.php?t=266992 作者 hahaxixi 10:34 |

静态链接网址 |

最新回复 (0) |

引用 (0) | 嵌入式系统
<script type="text/javascript"><!--
google_ad_client = "pub-2132256014190581";
/* 728x90, 创建于 09-1-12 */
google_ad_slot = "2911234755";
google_ad_width = 728;
google_ad_height = 90;
// --></script>
<script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"></script>

一, 为宿主机安装MTD工具程序
下载MTD工具程序: ftp://ftp.uk.linux.org/pub/people/dwmw2/mtd/cvs/ 下载至${PRJROOT}/build-tools并将它解开.
$ cd ${PRJROOT}/build-tools/mtd/util
$ make clean

修改Makefile文件:
SBINDIR=sbin
MANDIR=man
INCLUDEDIR=include

$ make

install时需要root权限,否则提示安装失败 :(
$ su -m
password:
# make DESTDIR=${PREFIX} install
工具程序安装到${PREFIX}/sbin目录.搜索路径已经在开发工具里添加.
然后用# chown -R命令改变tools目录的属主

在主机/dev目录中建立MTD设备条目,以root的身份执行MAKEDEV
# ./MAKEDEV

二, 为目标板安装MTD工具程序
首先下载并安装zlib.从
<script type="text/javascript"><!--
google_ad_client = "pub-2132256014190581";
/* 728x90, 创建于 09-1-12 */
google_ad_slot = "2911234755";
google_ad_width = 728;
google_ad_height = 90;
// --></script>
<script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"></script> http://www.gzip.org/zlib/ 下载zlib并将它解开放到${PRJROOT}/build-tools目录.然后移往该链接库的源码目录,进行编译工作:
$ cd ${PRJROOT}/build-tools/zlib-1.2.3
$ CC=arm-linux-gcc LDSHARED="arm-linux-ld -shared" ./configure --shared
缺省情况下,zlib建立静态的链接库.设定LDSHARED变量以及提供--shared选项,建立成共享链接库.
$ make
$ make prefix=${TARGET_PREFIX} install
zlib安装到${TARGET_PREFIX}/lib,接着将它安装到目标板的根文件系统:
$ cd ${TARGET_PREFIX}/lib
$ cp -d libz.so* ${PRJROOT}/rootfs/lib

然后,将MTD snapshot下载并解开放到${PRJROOT}/sysapps.
$ cd ${PRJROOT}/sysapps/mtd/util
$ make clean

修改Makefile文
<script type="text/javascript"><!--
google_ad_client = "pub-2132256014190581";
/* 728x90, 创建于 09-1-12 */
google_ad_slot = "2911234755";
google_ad_width = 728;
google_ad_height = 90;
// --></script>
<script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"></script>
件:
SBINDIR=usr/sbin
MANDIR=usr/man
INCLUDEDIR=usr/include
CROSS=arm-linux-

$ make

install时需要root权限
$ su -m
password:
# make DESTDIR=${PRJROOT}/rootfs install
工具程序安装到${PRJROOT}/rootfs/usr/sbin目录.
然后用# chown -R命令改变rootfs目录的属主.

Flash芯片以块(而非字节)为单位,所以建立分区的时候必须考虑到"抹除块"的大小,以"抹除块"的大小为界,如:
(可以 # cat /proc/mtd 来察看分区信息)
dev: size erasesize name
mtd0: 00030000 00004000 "boot"
mtd1: 001d0000 00004000 "kernel"
mtd2: 00a00000 00004000 "rootfs"
mtd3: 03400000 00004000 "ext-fs3"
 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息