热门关键词: 未安装任何音频设备 广东工业纯水设备 重庆水洗设备 深圳 工业设备 太阳能电池制造设备 电阻、电位器生产设备 艺术玻璃设备
  IC库存(8958万) PDF资料(329万) IC价格 IC求购 资讯 技术资料
电子元器件搜索:
维库电子市场网是知名的电子元器件交易网站,为电子生产企业提供IC库存和技术资料查询服务。
相关专题
急!交叉编译mtd工具,找不到zlib.h!
新闻出处:21ic 发布时间:2007-06-30
youcanh 发布于 2007-6-29 23:25:00
急!大虾帮帮小弟。最近我要用到flash_eraseall工具,好擦除flash,往NAND上写yaffs文件系统。参考网上的做法下载了mtd-utils-1.0.0.tar 和 zlib-1.2.3.tar 。我的环境是centOS5.0 交叉编译器3.4.3下面是我的操作步骤,帮我看看有没有错误
首先交叉编译zlib。做法如下
make clean
CC=arm-linux-gcc LDSHARED="arm-linux-ld -shared" ./configure --shared
make
make prefix=/usr/local/arm/v5t_le/rootfs install
这样在rootfs下有三个目录 include  lib  share在include目录里就有zlib.h我就把include里的头文件拷到了usr/include中。lib中有我们下一步用到的库文件
接着交叉编译mtd-util
修改Makefile
SBINDIR=/usr/sbin
MANDIR=/usr/man
INCLUDEDIR=/usr/include
上面几句不知道什么意思,就没改
LDFLAGS := -L /usr/local/arm/v5t_le/rootfs/lib  添了这句,就是前面交叉编译出来的库
CROSS=arm-linux-
CC := $(CROSS)gcc

make就出现了下面的错误arm-linux-gcc -I./include -O2 -Wall -g -c -o mkfs.jffs2.o mkfs.jffs2.c -g -Wp,-MD,.mkfs.jffs2.c.dep
mkfs.jffs2.c:68:18: zlib.h: No such file or directory
make: *** [mkfs.jffs2.o] Error 1
rm ftl_check.o mkfs.jffs.o flash_erase.o ftl_format.o nanddump.o doc_loadbios.o
把编译器换成3.3.2,步骤一样zlib.h找到了,链接又有错误
/usr/local/arm/3.3.2/lib/gcc-lib/arm-linux/3.3.2/../../../../arm-linux/bin/ld: ERROR: /usr/local/arm/3.3.2/lib/gcc-lib/arm-linux/3.3.2/libgcc.a(_modsi3.oS) is compiled for EABI version 0, whereas mkfs.jffs2 is compiled for version 4
File format not recognized: failed to merge target specific data of file /usr/local/arm/3.3.2/lib/gcc-lib/arm-linux/3.3.2/libgcc.a(_modsi3.oS)
mtd换成mtd-snapshot-20040730.tar也是找不到zlib.h
我都快急疯了,搞了一整天都没有结果!是不是zlib和mtd的版本不配套呢?真是搞不明白了!


wangkj 发布于 2007-6-30 0:30:00
得两三天,如果熟练的话。



youcanh 发布于 2007-6-30 9:24:00
楼上的朋友可不可以说的更明白些,openembed以前没有接触过,我都是用Redhat和Centos编译的


关闭】【打印
友情链接:
© 2007 电子设备网 网站地图