LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 692|回复: 0

yaffs中的在编译mtdemul2k.o时遇到的错误~

[复制链接]
发表于 2009-5-12 09:56:20 | 显示全部楼层 |阅读模式
最近在想把Yaffs文件系统编入内核,现已支持。但是要测试比较麻烦,还好Yaffs下可以支持基于file和ram的模拟。
但是都是基于MTD层的接口,我在编译mtdemul2k.o文件就遇到了如下错误,前大半部分错误都是内核文件错误,不大可能吧,希望得到指教。谢谢。

我的makefile文件:
Makefile for NANDemul MTD
#
# NB this is not yet suitable for putting into the kernel tree.
# YAFFS: Yet another Flash File System. A NAND-flash specific file system.
#
# Copyright (C) 2002 Aleph One Ltd.
#   for Toby Churchill Ltd and Brightstar Engineering
#
# Created by Charles Manning <charles@aleph1.co.uk>
#
# 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
## comment out USE_xxxx if you don't want these features.

KERNELDIR =  /lib/modules/$(shell uname -r)/build


#CFLAGS = -D__KERNEL__ -DMODULE   -I$(KERNELDIR)/include -O2 -Wall -g
CFLAGS = -D__KERNEL__ -DMODULE   -I$(KERNELDIR)/include -O2 -Wall -g



TARGET = nandemul2k.o

default: $(TARGET)

clean:
        rm -f $(TARGET)

$(TARGET): %.o: %.c
        gcc -c $(CFLAGS) $< -o $@




报错的内容:
In file included from /lib/modules/2.6.18-pae/build/include/asm/thread_info.h:16,
                 from /lib/modules/2.6.18-pae/build/include/linux/thread_info.h:21,
                 from /lib/modules/2.6.18-pae/build/include/linux/preempt.h:9,
                 from /lib/modules/2.6.18-pae/build/include/linux/spinlock.h:49,
                 from /lib/modules/2.6.18-pae/build/include/linux/capability.h:45,
                 from /lib/modules/2.6.18-pae/build/include/linux/sched.h:44,
                 from /lib/modules/2.6.18-pae/build/include/linux/module.h:9,
                 from nandemul2k.c:20:
/lib/modules/2.6.18-pae/build/include/asm/processor.h:80: error: ‘CONFIG_X86_L1_CACHE_SHIFT’ undeclared here (not in a function)
/lib/modules/2.6.18-pae/build/include/asm/processor.h:80: error: requested alignment is not a constant
In file included from /lib/modules/2.6.18-pae/build/include/linux/rwsem.h:24,
                 from /lib/modules/2.6.18-pae/build/include/asm/semaphore.h:42,
                 from /lib/modules/2.6.18-pae/build/include/linux/sched.h:57,
                 from /lib/modules/2.6.18-pae/build/include/linux/module.h:9,
                 from nandemul2k.c:20:
/lib/modules/2.6.18-pae/build/include/asm/rwsem.h: In function ‘__down_read’:
/lib/modules/2.6.18-pae/build/include/asm/rwsem.h:97: error: expected ‘:’ or ‘)’ before ‘KBUILD_BASENAME’
/lib/modules/2.6.18-pae/build/include/asm/rwsem.h: In function ‘__down_write_nested’:
/lib/modules/2.6.18-pae/build/include/asm/rwsem.h:149: error: expected ‘:’ or ‘)’ before ‘KBUILD_BASENAME’
/lib/modules/2.6.18-pae/build/include/asm/rwsem.h: In function ‘__up_read’:
/lib/modules/2.6.18-pae/build/include/asm/rwsem.h:192: error: expected ‘:’ or ‘)’ before ‘KBUILD_BASENAME’
/lib/modules/2.6.18-pae/build/include/asm/rwsem.h:192: warning: unused variable ‘tmp’
/lib/modules/2.6.18-pae/build/include/asm/rwsem.h: In function ‘__up_write’:
/lib/modules/2.6.18-pae/build/include/asm/rwsem.h:216: error: expected ‘:’ or ‘)’ before ‘KBUILD_BASENAME’
/lib/modules/2.6.18-pae/build/include/asm/rwsem.h: In function ‘__downgrade_write’:
/lib/modules/2.6.18-pae/build/include/asm/rwsem.h:242: error: expected ‘:’ or ‘)’ before ‘KBUILD_BASENAME’
In file included from /lib/modules/2.6.18-pae/build/include/linux/sched.h:57,
                 from /lib/modules/2.6.18-pae/build/include/linux/module.h:9,
                 from nandemul2k.c:20:
/lib/modules/2.6.18-pae/build/include/asm/semaphore.h: In function ‘down’:
/lib/modules/2.6.18-pae/build/include/asm/semaphore.h:99: error: expected ‘:’ or ‘)’ before ‘KBUILD_BASENAME’
/lib/modules/2.6.18-pae/build/include/asm/semaphore.h: In function ‘down_interruptible’:
/lib/modules/2.6.18-pae/build/include/asm/semaphore.h:123: error: expected ‘:’ or ‘)’ before ‘KBUILD_BASENAME’
/lib/modules/2.6.18-pae/build/include/asm/semaphore.h: In function ‘down_trylock’:
/lib/modules/2.6.18-pae/build/include/asm/semaphore.h:145: error: expected ‘:’ or ‘)’ before ‘KBUILD_BASENAME’
/lib/modules/2.6.18-pae/build/include/asm/semaphore.h: In function ‘up’:
/lib/modules/2.6.18-pae/build/include/asm/semaphore.h:172: error: expected ‘:’ or ‘)’ before ‘KBUILD_BASENAME’
In file included from /lib/modules/2.6.18-pae/build/include/asm/smp.h:17,
                 from /lib/modules/2.6.18-pae/build/include/linux/smp.h:18,
                 from /lib/modules/2.6.18-pae/build/include/linux/sched.h:63,
                 from /lib/modules/2.6.18-pae/build/include/linux/module.h:9,
                 from nandemul2k.c:20:
/lib/modules/2.6.18-pae/build/include/asm/mpspec.h:6:25: error: mach_mpspec.h: No such file or directory
In file included from /lib/modules/2.6.18-pae/build/include/asm/smp.h:17,
                 from /lib/modules/2.6.18-pae/build/include/linux/smp.h:18,
                 from /lib/modules/2.6.18-pae/build/include/linux/sched.h:63,
                 from /lib/modules/2.6.18-pae/build/include/linux/module.h:9,
                 from nandemul2k.c:20:
/lib/modules/2.6.18-pae/build/include/asm/mpspec.h: At top level:
/lib/modules/2.6.18-pae/build/include/asm/mpspec.h:8: error: ‘MAX_MP_BUSSES’ undeclared here (not in a function)
/lib/modules/2.6.18-pae/build/include/asm/mpspec.h:22: error: ‘MAX_IRQ_SOURCES’ undeclared here (not in a function)
In file included from /lib/modules/2.6.18-pae/build/include/linux/smp.h:18,
                 from /lib/modules/2.6.18-pae/build/include/linux/sched.h:63,
                 from /lib/modules/2.6.18-pae/build/include/linux/module.h:9,
                 from nandemul2k.c:20:
/lib/modules/2.6.18-pae/build/include/asm/smp.h:76:26: error: mach_apicdef.h: No such file or directory
In file included from /lib/modules/2.6.18-pae/build/include/linux/smp.h:18,
                 from /lib/modules/2.6.18-pae/build/include/linux/sched.h:63,
                 from /lib/modules/2.6.18-pae/build/include/linux/module.h:9,
                 from nandemul2k.c:20:
/lib/modules/2.6.18-pae/build/include/asm/smp.h: In function ‘hard_smp_processor_id’:
/lib/modules/2.6.18-pae/build/include/asm/smp.h:80: warning: implicit declaration of function ‘GET_APIC_ID’
In file included from /lib/modules/2.6.18-pae/build/include/linux/module.h:9,
                 from nandemul2k.c:20:
/lib/modules/2.6.18-pae/build/include/linux/sched.h: In function ‘dequeue_signal_lock’:
/lib/modules/2.6.18-pae/build/include/linux/sched.h:1209: warning: implicit declaration of function ‘local_irq_save’
/lib/modules/2.6.18-pae/build/include/linux/sched.h:1211: warning: implicit declaration of function ‘local_irq_restore’
In file included from /lib/modules/2.6.18-pae/build/include/asm/pgtable.h:244,
                 from /lib/modules/2.6.18-pae/build/include/linux/mm.h:38,
                 from /lib/modules/2.6.18-pae/build/include/linux/pagemap.h:7,
                 from nandemul2k.c:27:
/lib/modules/2.6.18-pae/build/include/asm/pgtable-3level.h: In function ‘set_pte’:
/lib/modules/2.6.18-pae/build/include/asm/pgtable-3level.h:55: error: ‘pte_t’ has no member named ‘pte_high’
/lib/modules/2.6.18-pae/build/include/asm/pgtable-3level.h:55: error: ‘pte_t’ has no member named ‘pte_high’
/lib/modules/2.6.18-pae/build/include/asm/pgtable-3level.h: In function ‘pte_clear’:
/lib/modules/2.6.18-pae/build/include/asm/pgtable-3level.h:97: error: ‘pte_t’ has no member named ‘pte_high’
/lib/modules/2.6.18-pae/build/include/asm/pgtable-3level.h: At top level:
/lib/modules/2.6.18-pae/build/include/asm/pgtable-3level.h:100: error: expected ‘)’ before ‘*’ token
/lib/modules/2.6.18-pae/build/include/asm/pgtable-3level.h: In function ‘ptep_get_and_clear’:
/lib/modules/2.6.18-pae/build/include/asm/pgtable-3level.h:114: error: ‘pte_t’ has no member named ‘pte_high’
/lib/modules/2.6.18-pae/build/include/asm/pgtable-3level.h:114: error: ‘pte_t’ has no member named ‘pte_high’
/lib/modules/2.6.18-pae/build/include/asm/pgtable-3level.h:115: error: ‘pte_t’ has no member named ‘pte_high’
/lib/modules/2.6.18-pae/build/include/asm/pgtable-3level.h: In function ‘pte_same’:
/lib/modules/2.6.18-pae/build/include/asm/pgtable-3level.h:122: error: ‘pte_t’ has no member named ‘pte_high’
/lib/modules/2.6.18-pae/build/include/asm/pgtable-3level.h:122: error: ‘pte_t’ has no member named ‘pte_high’
/lib/modules/2.6.18-pae/build/include/asm/pgtable-3level.h: In function ‘pte_none’:
/lib/modules/2.6.18-pae/build/include/asm/pgtable-3level.h:129: error: ‘pte_t’ has no member named ‘pte_high’
/lib/modules/2.6.18-pae/build/include/asm/pgtable-3level.h: In function ‘pte_pfn’:
/lib/modules/2.6.18-pae/build/include/asm/pgtable-3level.h:135: error: ‘pte_t’ has no member named ‘pte_high’
/lib/modules/2.6.18-pae/build/include/asm/pgtable-3level.h: In function ‘pfn_pte’:
/lib/modules/2.6.18-pae/build/include/asm/pgtable-3level.h:144: error: ‘pte_t’ has no member named ‘pte_high’
/lib/modules/2.6.18-pae/build/include/asm/pgtable-3level.h:144: warning: right shift count >= width of type
/lib/modules/2.6.18-pae/build/include/asm/pgtable-3level.h:146: error: ‘pte_t’ has no member named ‘pte_high’
/lib/modules/2.6.18-pae/build/include/asm/pgtable-3level.h: At top level:
/lib/modules/2.6.18-pae/build/include/asm/pgtable-3level.h:152: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘pfn_pmd’
In file included from /lib/modules/2.6.18-pae/build/include/linux/mm.h:38,
                 from /lib/modules/2.6.18-pae/build/include/linux/pagemap.h:7,
                 from nandemul2k.c:27:
/lib/modules/2.6.18-pae/build/include/asm/pgtable.h: In function ‘pte_modify’:
/lib/modules/2.6.18-pae/build/include/asm/pgtable.h:318: error: ‘pte_t’ has no member named ‘pte_high’
/lib/modules/2.6.18-pae/build/include/asm/pgtable.h:319: error: ‘pte_t’ has no member named ‘pte_high’
/lib/modules/2.6.18-pae/build/include/asm/pgtable.h:319: warning: right shift count >= width of type
In file included from /lib/modules/2.6.18-pae/build/include/asm/pgtable.h:450,
                 from /lib/modules/2.6.18-pae/build/include/linux/mm.h:38,
                 from /lib/modules/2.6.18-pae/build/include/linux/pagemap.h:7,
                 from nandemul2k.c:27:
/lib/modules/2.6.18-pae/build/include/asm-generic/pgtable.h: At top level:
/lib/modules/2.6.18-pae/build/include/asm-generic/pgtable.h:199: error: expected ‘)’ before ‘*’ token
/lib/modules/2.6.18-pae/build/include/asm-generic/pgtable.h:223: error: expected ‘)’ before ‘*’ token
In file included from /lib/modules/2.6.18-pae/build/include/linux/pagemap.h:7,
                 from nandemul2k.c:27:
/lib/modules/2.6.18-pae/build/include/linux/mm.h: In function ‘lowmem_page_address’:
/lib/modules/2.6.18-pae/build/include/linux/mm.h:531: warning: implicit declaration of function ‘__page_to_pfn’
/lib/modules/2.6.18-pae/build/include/linux/mm.h: At top level:
/lib/modules/2.6.18-pae/build/include/linux/mm.h:809: error: expected declaration specifiers or ‘...’ before ‘pmd_t’
/lib/modules/2.6.18-pae/build/include/linux/mm.h:810: error: expected ‘)’ before ‘*’ token
/lib/modules/2.6.18-pae/build/include/linux/mm.h:823: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
In file included from /lib/modules/2.6.18-pae/build/include/linux/irq.h:22,
                 from /lib/modules/2.6.18-pae/build/include/asm/hardirq.h:5,
                 from /lib/modules/2.6.18-pae/build/include/linux/hardirq.h:7,
                 from /lib/modules/2.6.18-pae/build/include/linux/interrupt.h:11,
                 from /lib/modules/2.6.18-pae/build/include/asm/highmem.h:23,
                 from /lib/modules/2.6.18-pae/build/include/linux/highmem.h:23,
                 from /lib/modules/2.6.18-pae/build/include/linux/pagemap.h:10,
                 from nandemul2k.c:27:
/lib/modules/2.6.18-pae/build/include/asm/irq.h:15:25: error: irq_vectors.h: No such file or directory
In file included from /lib/modules/2.6.18-pae/build/include/asm/hardirq.h:5,
                 from /lib/modules/2.6.18-pae/build/include/linux/hardirq.h:7,
                 from /lib/modules/2.6.18-pae/build/include/linux/interrupt.h:11,
                 from /lib/modules/2.6.18-pae/build/include/asm/highmem.h:23,
                 from /lib/modules/2.6.18-pae/build/include/linux/highmem.h:23,
                 from /lib/modules/2.6.18-pae/build/include/linux/pagemap.h:10,
                 from nandemul2k.c:27:
/lib/modules/2.6.18-pae/build/include/linux/irq.h:169: error: ‘NR_IRQS’ undeclared here (not in a function)
In file included from /lib/modules/2.6.18-pae/build/include/linux/irq.h:182,
                 from /lib/modules/2.6.18-pae/build/include/asm/hardirq.h:5,
                 from /lib/modules/2.6.18-pae/build/include/linux/hardirq.h:7,
                 from /lib/modules/2.6.18-pae/build/include/linux/interrupt.h:11,
                 from /lib/modules/2.6.18-pae/build/include/asm/highmem.h:23,
                 from /lib/modules/2.6.18-pae/build/include/linux/highmem.h:23,
                 from /lib/modules/2.6.18-pae/build/include/linux/pagemap.h:10,
                 from nandemul2k.c:27:
/lib/modules/2.6.18-pae/build/include/asm/hw_irq.h:31: error: ‘NR_IRQ_VECTORS’ undeclared here (not in a function)
nandemul2k.c: In function ‘nand_read’:
nandemul2k.c:307: warning: implicit declaration of function ‘nand_read_ecc’
nandemul2k.c: At top level:
nandemul2k.c:314: error: static declaration of ‘nand_read_ecc’ follows non-static declaration
nandemul2k.c:307: error: previous implicit declaration of ‘nand_read_ecc’ was here
nandemul2k.c: In function ‘nand_read_oob’:
nandemul2k.c:387: error: invalid operands to binary * (have ‘int’ and ‘size_t *’)
nandemul2k.c: In function ‘nand_write’:
nandemul2k.c:410: warning: implicit declaration of function ‘nand_write_ecc’
nandemul2k.c: At top level:
nandemul2k.c:416: error: static declaration of ‘nand_write_ecc’ follows non-static declaration
nandemul2k.c:410: error: previous implicit declaration of ‘nand_write_ecc’ was here
nandemul2k.c: In function ‘nandemul2k_scan’:
nandemul2k.c:602: error: ‘struct mtd_info’ has no member named ‘oobavail’
nandemul2k.c:617: warning: assignment from incompatible pointer type
nandemul2k.c:618: warning: assignment from incompatible pointer type
nandemul2k.c:619: warning: assignment from incompatible pointer type
nandemul2k.c:620: warning: assignment from incompatible pointer type
nandemul2k.c:623: error: ‘struct mtd_info’ has no member named ‘readv’
make: *** [nandemul2k.o] Error 1
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表