커널 2.6 컴파일 문제...
글쓴이: honesteyes / 작성시간: 월, 2008/10/20 - 8:43오후
이번에 커널 linux-2.6.4를 다운 받아서 설치 하는중에
자꾸
CC arch/i386/kernel/asm-offsets.s
In file included from include/linux/prefetch.h:13,
from include/linux/list.h:7,
from include/linux/signal.h:4,
from arch/i386/kernel/asm-offsets.c:7:
include/asm/processor.h:86: error: array type has incomplete element type
make[1]: *** [arch/i386/kernel/asm-offsets.s] 오류 1
make: *** [arch/i386/kernel/asm-offsets.s] 오류 2
이런 에러가 납니다
인터넷으로 계속 찾아서 그 데로 해봤는데 잘 안되네요...
왜 이런 오류가 나는건지 알려주시고 해결 방안 좀 알려주시면 감사드리겠습니다.
Forums:
..gcc4 로 컴파일 할때
..gcc4 로 컴파일 할때 에러나는 이유는
include/asm-i386/processor.h가 구조체 tss_struct 가 선언되기도 전에 tss_struct 를 사용해서 init_tss[NR_CPUS]를 선언하기 때문입니다
Simple fix:
라인 86 의
extern struct tss_struct init_tss[NR_CPUS];를
구조체 tss_struct 가 선언된 이후로 옮기면 됩니다.
예컨대 line 405 위치로 옮긴다든지..
unsigned long __cacheline_filler[5];
/*
* .. and then another 0x100 bytes for emergency kernel stack
*/
unsigned long stack[64];
} __attribute__((packed));
+ extern struct tss_struct init_tss[NR_CPUS];
struct thread_struct {
/* cached TLS descriptors. */
struct desc_struct tls_array[GDT_ENTRY_TLS_ENTRIES];
..
댓글 달기