기존 이솝 임베디드 포럼의 지식인 서비스가 게시판 형태로 변경되었습니다.

28페이지에 보면 make mkyaffs 와 make mkyaffsimage를 실행 시켜야 하는데.
make mkyaffs는 보드에서 실행시키위해 크로스 컴파일을 해야하는 한다고 되어 있어

Makefile을 아래와 같이 수정 했습니다.

***************** Makefile  *********************

CREDITS         Makefile     System.map      drivers/  init/     lib/     scripts/   usr/
#Makefile for mkyaffs
#
# NB this is not yet suitable for putting into the kernel tree.
# YAFFS: Yet another FFS. A NAND-flash specific file system.
#
# Copyright (C) 2002 Aleph One Ltd.
#   for Toby Churchill Ltd and Brightstar Engineering
#
# Created by Charles Manning <[email protected]>
#
#Makefile for mkyaffs
#
# NB this is not yet suitable for putting into the kernel tree.
# YAFFS: Yet another FFS. A NAND-flash specific file system.
#
# Copyright (C) 2002 Aleph One Ltd.
#   for Toby Churchill Ltd and Brightstar Engineering
#
# Created by Charles Manning <[email protected]>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License version 2 as
# published by the Free Software Foundation.
#Makefile for mkyaffs
#
# NB this is not yet suitable for putting into the kernel tree.
# YAFFS: Yet another FFS. A NAND-flash specific file system.
#
# Copyright (C) 2002 Aleph One Ltd.
#   for Toby Churchill Ltd and Brightstar Engineering
#
# Created by Charles Manning <[email protected]>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License version 2 as
# published by the Free Software Foundation.

## Change or override  KERNELDIR to your kernel

KERNELDIR = /korea-dokdo/linux-2.4.20-aesop2440/            <--------     수정한 부분

CFLAGS =   -I/usr/include -I.. -O2 -Wall -DCONFIG_YAFFS_UTIL
CFLAGS+=   -Wshadow -Wpointer-arith -Wwrite-strings -Wstrict-prototypes -Wmissing-declarations
CFLAGS+=   -Wmissing-prototypes -Wredundant-decls -Wnested-externs -Winline

## Change if you are using a cross-compiler
MAKETOOLS =

CC=$(MAKETOOLS)arm-linux-gcc                                <---------     수정한 부분


MKYAFFSOBJS = mkyaffs.o

MKYAFFSIMAGEOBJS = mkyaffsimage.o yaffs_ecc.o


all: mkyaffs mkyaffsimage

$(MKYAFFSIMAGEOBJS): %.o: %.c
        $(CC) -c $(CFLAGS) $< -o $@

mkyaffsimage: $(MKYAFFSIMAGEOBJS)
        $(CC) -o $@ $(MKYAFFSIMAGEOBJS)

$(MKYAFFSOBJS): %.o: %.c
        $(CC) -c $(CFLAGS) $< -o $@

mkyaffs: $(MKYAFFSOBJS)
        $(CC) -o $@ $(MKYAFFSOBJS)

yaffs_ecc.c:
        ln -s ../yaffs_ecc.c yaffs_ecc.c

******************************************************



두 부분을 수정하고 아래와 같이 make mkyaffs를 하면 아래와 같습니다.



root@ibthere4u:/jun/yaffs/utils# make mkyaffs
arm-linux-gcc -c -I/usr/include -I.. -O2 -Wall -DCONFIG_YAFFS_UTIL -Wshadow -Wpointer-arith -Wwrite-strings -Wstrict-prototypes -Wmissing-declarations -Wmissing-prototypes -Wredundant-decls -Wnested-externs -Winline mkyaffs.c -o mkyaffs.o
In file included from mkyaffs.c:29:
/usr/include/unistd.h:1036: warning: redundant redeclaration of `ctermid' in same scope
/usr/include/stdio.h:779: warning: previous declaration of `ctermid'
mkyaffs.c:35:26: mtd/mtd-user.h: No such file or directory
mkyaffs.c:73: error: variable `yaffs_oobinfo' has initializer but incomplete type
mkyaffs.c:74: error: unknown field `useecc' specified in initializer
mkyaffs.c:74: warning: excess elements in struct initializer
mkyaffs.c:74: warning: (near initialization for `yaffs_oobinfo')
mkyaffs.c:75: error: unknown field `eccpos' specified in initializer
mkyaffs.c:75: error: extra brace group at end of initializer
mkyaffs.c:75: error: (near initialization for `yaffs_oobinfo')
mkyaffs.c:75: warning: excess elements in struct initializer
mkyaffs.c:75: warning: (near initialization for `yaffs_oobinfo')
mkyaffs.c:78: error: variable `yaffs_noeccinfo' has initializer but incomplete type
mkyaffs.c:79: error: unknown field `useecc' specified in initializer
mkyaffs.c:79: warning: excess elements in struct initializer
mkyaffs.c:79: warning: (near initialization for `yaffs_noeccinfo')
mkyaffs.c: In function `main':
mkyaffs.c:96: error: variable `oob' has initializer but incomplete type
mkyaffs.c:96: warning: excess elements in struct initializer
mkyaffs.c:96: warning: (near initialization for `oob')
mkyaffs.c:96: warning: excess elements in struct initializer
mkyaffs.c:96: warning: (near initialization for `oob')
mkyaffs.c:96: warning: excess elements in struct initializer
mkyaffs.c:96: warning: (near initialization for `oob')
mkyaffs.c:96: error: storage size of `oob' isn't known
mkyaffs.c:97: error: `mtd_info_t' undeclared (first use in this function)
mkyaffs.c:97: error: (Each undeclared identifier is reported only once
mkyaffs.c:97: error: for each function it appears in.)
mkyaffs.c:97: error: parse error before "meminfo"
mkyaffs.c:98: error: `erase_info_t' undeclared (first use in this function)
mkyaffs.c:99: error: storage size of `oobsel' isn't known
mkyaffs.c:151: error: `MEMGETINFO' undeclared (first use in this function)
mkyaffs.c:151: error: `meminfo' undeclared (first use in this function)
mkyaffs.c:159: error: `MEMSETOOBSEL' undeclared (first use in this function)
mkyaffs.c:190: error: `MEMREADOOB' undeclared (first use in this function)
mkyaffs.c:204: error: `erase' undeclared (first use in this function)
mkyaffs.c:207: error: `MEMERASE' undeclared (first use in this function)
mkyaffs.c:231: error: `MEMWRITEOOB' undeclared (first use in this function)
mkyaffs.c:96: warning: unused variable `oob'
mkyaffs.c:99: warning: unused variable `oobsel'
mkyaffs.c: At top level:
mkyaffs.c:73: error: storage size of `yaffs_oobinfo' isn't known
mkyaffs.c:78: error: storage size of `yaffs_noeccinfo' isn't known
make: *** [mkyaffs.o] Error 1
root@ibthere4u:/jun/yaffs/utils#


에러 나있는 부분을 보면 mtd/mtd-user.h 라는 파일을 찾지 못해서 인거 같은데  

어떻게 해야할지  조언을 부탁드립니다.  읽어주셔서 감사합니다.



고현철

2006.08.28 10:50:25
*.232.213.128

yaffs쪽 유틸의 경우

2.4.x 대 커널에서만 유용합니다. 실제로 mkyaffsimage의 경우도
존재하기는 하나(2.6.13 작업할때도) 컴파일은 에러가 나더군요.

수정할까 하다가 그냥 놔뒀었던 기억이 나네요.

만일 2.4.x 커널을 사용하신다면 2.4.x용의 yaffs source를 가지고
작업하셔야 합니다.

2.6.x용으로 나온 녀석은 필요도 없고, 컴파일도 안되는 듯 하더군요.

yaffs2가 아닌 yaffs의 경우 mkyaffsimage의 경우는 kernel 2.6.x대에서도 2.4.x 대 용으로 컴파일된 녀석을 가지고 image를 만들고
aesop의 u-boot에서 write해도 잘 되긴 합니다.

List of Articles
번호 제목 글쓴이 날짜 조회 수sort
6148 S3C6410 IROM booting [6] 전병환 2009-02-19 2771
6147 오드로이드 SDCARD의 Root FS를 안보이게 하는 방법은... [2] 김영일 2010-08-25 2768
6146 [질문] 이솝보드에 삼성의 DNW(USB/Sireal 다운로더)사용하려면..? [6] 박재흥 2006-08-16 2759
6145 삼성 2440 I/O Speed [1] 전철웅 2007-11-17 2759
6144 [완료] 터치 증상이 이상합니다. [6] 강경완 2007-05-11 2751
6143 가속도 센서 관련하여 문의글 올립니다. [2] 리오살다 2013-04-02 2750
6142 [완료]dm9000a [10] 이진우 2007-09-14 2741
6141 프로젝트 계획 조언부탁드립니다. [5] 시그인트 2014-02-19 2734
6140 Opencore 와 Openmax 그리고 mfc 와의 관계. [11] 임기영 2009-09-04 2732
6139 [완료]SDL 기본 화면 뛰우기 [3] 윤치호 2007-11-15 2731
6138 [완료] LX800 PDS에 있는 WINCE BSP는 무엇인지요. [6] 오주열 2007-05-26 2731
6137 안드로이더 에 touch cal 값을 어떻게 얻었나요? [3] 이성호 2009-04-06 2717
6136 ubuntu 10.04 오드로이드 타겟 adb 연결 문제 [1] rapel 2010-06-11 2711
6135 yaffs2 포팅(lost+found증상) file 푸르름 2011-12-23 2709
6134 [완료]pci slot확장시 bios수정필요한지? [2] 조성철 2007-06-05 2709
6133 aesop lx800 구입문의 [1] 조정근 2008-09-18 2704
6132 [re] [질문] 동영상 재생 & LCD 잔상 [5] 강덕하 2007-05-22 2703
6131 안드로이드-S 구글맵관련 앱 설치가 안됩니다. [3] 바람돌이0 2010-07-21 2692
6130 LX800 주변기기 추천 부탁드립니다.[완료] [7] 조준동 2007-05-10 2692
6129 만든 앱이 수퍼 유저 권한 획득하려면 에 대한 질문입니다. [7] 프로그램개발자 2014-01-08 2689

사용자 로그인