linux kernel 2.6 module cross compile 시 에러 발생합니다. 도와주세요

ybear의 이미지

linux kernel 2.6 module cross compile 해서

Module을 생성하려고 하는데 아래와 같은 에러가 발생합니다.

Makefile과 Error 을 첨부합니다.

고수님들 부탁 드리겠습니다.

Makefile 입니다.

KERNELDIR = /home/ybear/Ralink/source/linux-2.6.21.x/Kbuild
 
BUILD_VER=V2.6
all: $(BUILD_VER)
 
.PHONY: V2.4 V2.6 VOthers clean
 
obj-m := hello.o
 
V2.6:
        make ARCH=mips CROSS_COMPILE="/opt/buildroot-gcc342/bin"/mipsel-linux-uclibc- -C /home/ybear/Ralink/source/linux-2.6.21.x SUBDIRS=/home/ybear/Ralink/source/linux-2.6.21.x/gct/driver modules
 
 
# Not supported Kernel versions
 
VOthers:
        @echo "This drivers only supports for Kernel v2.4 and v2.6."
 
clean:
        rm -rf *.o .*.cmd *.ko *.mod.c .tmp_versions built_in.o cscope.out Module.symvers

Error입니다.

make ARCH=mips CROSS_COMPILE="/opt/buildroot-gcc342/bin"/mipsel-linux-uclibc- -C /home/ybear/Ralink/source/linux-2.6.21.x SUBDIRS=/home/ybear/Ralink/source/linux-2.6.21.x/gct/driver modules 
make[1]: Entering directory `/home/ybear/Ralink/source/linux-2.6.21.x'
  Building modules, stage 2.
  MODPOST 1 modules
WARNING: "printk" [/home/ybear/Ralink/source/linux-2.6.21.x/gct/driver/hello.ko] undefined!
  CC      /home/ybear/Ralink/source/linux-2.6.21.x/gct/driver/hello.mod.o
/home/ybear/Ralink/source/linux-2.6.21.x/gct/driver/hello.mod.c:8: error: variable `__this_module' has initializer but incomplete type
/home/ybear/Ralink/source/linux-2.6.21.x/gct/driver/hello.mod.c:9: error: unknown field `name' specified in initializer
/home/ybear/Ralink/source/linux-2.6.21.x/gct/driver/hello.mod.c:9: warning: excess elements in struct initializer
/home/ybear/Ralink/source/linux-2.6.21.x/gct/driver/hello.mod.c:9: warning: (near initialization for `__this_module')
/home/ybear/Ralink/source/linux-2.6.21.x/gct/driver/hello.mod.c:10: error: unknown field `init' specified in initializer
/home/ybear/Ralink/source/linux-2.6.21.x/gct/driver/hello.mod.c:10: warning: excess elements in struct initializer
/home/ybear/Ralink/source/linux-2.6.21.x/gct/driver/hello.mod.c:10: warning: (near initialization for `__this_module')
/home/ybear/Ralink/source/linux-2.6.21.x/gct/driver/hello.mod.c:8: error: storage size of `__this_module' isn't known
make[2]: *** [/home/ybear/Ralink/source/linux-2.6.21.x/gct/driver/hello.mod.o] 오류 1
make[1]: *** [modules] 오류 2
make[1]: Leaving directory `/home/ybear/Ralink/source/linux-2.6.21.x'
make: *** [V2.6] 오류 2

samparknet의 이미지

make menuconfig에 가셔서 Enable Loadable module support을 설정을 해 주시고
다시 컴파일하세요 될 것입니다.