도와주세요!!
계속 질문을 올리게 되네요.. ㅜㅜ;;
다른 커널도 아니고 falinux에서 제공하는 커널이.. 컴파일이 안되네요..ㅡㅜ;;
make zImage에서 아래와 같은 에러가 발생합니다. 환경은 우분투 9.04를 사용하고 있습니다...
도움 부탁드립니다.
CHK include/linux/version.h
make[1]: `include/asm-arm/mach-types.h'는 이미 갱신되었습니다.
CHK include/linux/utsrelease.h
CC arch/arm/kernel/asm-offsets.s
In file included from include/linux/irqflags.h:46,
from include/asm/system.h:77,
from include/asm/bitops.h:23,
from include/linux/bitops.h:9,
from include/linux/thread_info.h:20,
from include/linux/preempt.h:9,
from include/linux/spinlock.h:49,
from include/linux/capability.h:45,
from include/linux/sched.h:46,
from arch/arm/kernel/asm-offsets.c:13:
include/asm/irqflags.h:11:5: warning: "__LINUX_ARM_ARCH__" is not defined
In file included from include/asm/bitops.h:23,
from include/linux/bitops.h:9,
from include/linux/thread_info.h:20,
from include/linux/preempt.h:9,
from include/linux/spinlock.h:49,
from include/linux/capability.h:45,
from include/linux/sched.h:46,
from arch/arm/kernel/asm-offsets.c:13:
include/asm/system.h:152:5: warning: "__LINUX_ARM_ARCH__" is not defined
include/asm/system.h:158:33: warning: "__LINUX_ARM_ARCH__" is not defined
include/asm/system.h:288:5: warning: "__LINUX_ARM_ARCH__" is not defined
include/asm/system.h:293:5: warning: "__LINUX_ARM_ARCH__" is not defined
In file included from include/linux/bitops.h:9,
from include/linux/thread_info.h:20,
from include/linux/preempt.h:9,
from include/linux/spinlock.h:49,
from include/linux/capability.h:45,
from include/linux/sched.h:46,
from arch/arm/kernel/asm-offsets.c:13:
include/asm/bitops.h:233:5: warning: "__LINUX_ARM_ARCH__" is not defined
In file included from include/asm/thread_info.h:16,
from include/linux/thread_info.h:21,
from include/linux/preempt.h:9,
from include/linux/spinlock.h:49,
from include/linux/capability.h:45,
from include/linux/sched.h:46,
from arch/arm/kernel/asm-offsets.c:13:
include/asm/fpstate.h:28:5: warning: "__LINUX_ARM_ARCH__" is not defined
In file included from include/linux/spinlock.h:326,
from include/linux/capability.h:45,
from include/linux/sched.h:46,
from arch/arm/kernel/asm-offsets.c:13:
include/asm/atomic.h:24:5: warning: "__LINUX_ARM_ARCH__" is not defined
In file included from include/linux/prefetch.h:14,
from include/linux/list.h:8,
from include/linux/wait.h:22,
from include/asm/semaphore.h:9,
from include/linux/sched.h:59,
from arch/arm/kernel/asm-offsets.c:13:
include/asm/processor.h:103:5: warning: "__LINUX_ARM_ARCH__" is not defined
In file included from include/asm/semaphore.h:13,
from include/linux/sched.h:59,
from arch/arm/kernel/asm-offsets.c:13:
include/asm/locks.h:15:5: warning: "__LINUX_ARM_ARCH__" is not defined
In file included from include/asm/page.h:32,
from include/linux/sched.h:60,
from arch/arm/kernel/asm-offsets.c:13:
include/asm/glue.h:110:2: #error Unknown data abort handler type
In file included from include/linux/sched.h:60,
from arch/arm/kernel/asm-offsets.c:13:
include/asm/page.h:106:2: #error Unknown user operations model
In file included from include/linux/sched.h:62,
from arch/arm/kernel/asm-offsets.c:13:
include/asm/mmu.h:7:5: warning: "__LINUX_ARM_ARCH__" is not defined
include/asm/mmu.h:13:5: warning: "__LINUX_ARM_ARCH__" is not defined
arch/arm/kernel/asm-offsets.c:88:5: warning: "__LINUX_ARM_ARCH__" is not defined
make[1]: *** [arch/arm/kernel/asm-offsets.s] 오류 1
make: *** [prepare0] 오류 2
다시 자답입니다..ㅡㅡ;;
PATH_MAX’ undeclared 란 메시지는 표준 라이브러리 최신 버젼만 지원해주는 리눅스에서 발생한다는군요..
그래서
#include <string.h>
#include "modpost.h"
위 둘 사이에 #include <limits.h> // 혹은 <linux/limits.h> 를 삽입해주면 해결된답니다..
그리고 나서 또 다른 문제가 발생...ㅡㅡ;;; 이건머...
drivers/video/console/vgacon.c:485: error: `PCIMEM_BASE' undeclared (first use in this function) 라는 오류를 뿌립니다..
또 구글링해보니, VGA text console을 지원하지 않아 발생하는 문제라는 군요.. Frame buffer의 형태로만 띄울 수 있다고 합니다..
그래서. Device Drivers -> Graphics support -> Console display driver support -> VGA text console 해제해주고..
S3C2410 LCD framebuffer support라는 항목이 보입니다.
먼지 잘 모르겠지만 일단 선택해주었습니다. S3C2410 LCD framebuffer sup -> S3C24XX LCD command line parameters 선택
이제 문제 없이 컴파일 되네요. 이미지 포팅해서 굴려봐야 겠습니다..^^;
참 보드는 s3c2440입니다. 왜~~ 강좌에는 이런 설정부분이 없는거에욧! ㅡㅜ;;
저같은 초짜분들에게 도움이 되길..^^;;
자답입니다..^^;;
구글링을 해보니.. "__LINUX_ARM_ARCH__" is not defined는 프로세스 타입이 설정이 안되어 있어서 발생한다는 군요.
그래서 다시 메뉴설정에 들어가서 프로세스 타입을 삼성 cpu로 선택하고 S3C2440 Machines -> FALinux S3C2440 Board -> EZ-S3C2440 선택하니 오류가 사라지네요..
근데 다른 오류 발생..ㅜㅡ;;; 흑.
scripts/mod/sumversion.c: In function ‘get_src_version’:
scripts/mod/sumversion.c:389: error: ‘PATH_MAX’ undeclared (first use in this function)
scripts/mod/sumversion.c:389: error: (Each undeclared identifier is reported only once
scripts/mod/sumversion.c:389: error: for each function it appears in.)
scripts/mod/sumversion.c:389: warning: unused variable ‘filelist’
make[2]: *** [scripts/mod/sumversion.o] 오류 1
make[1]: *** [scripts/mod] 오류 2
make: *** [scripts] 오류 2
아시는 분 답변부탁드립니다. 저 또한 찾아보다가 해결하면 자답하겠습니다..^^;;