커널 컴파일 에러 관련 질문
안녕하세요.
리눅스 커널을 시작하는 초보자입니다.
그런데, 설치 부터 잘 안되네요.
소스(linux-2.6.0)를 받아서 tar를 풀고
#make defconfig 명령으로 .config파일을 만든 후
#make를 수행하니 아래와 같은 에러가 나오고 수행이 안되네요.
어떻게 하면 될까요?
고수님들의 조언 부탁드립니다.
감사합니다.
linux-2.6.0> make
HOSTCC scripts/fixdep
HOSTCC scripts/split-include
HOSTCC scripts/conmakehash
HOSTCC scripts/docproc
HOSTCC scripts/kallsyms
CC scripts/empty.o
HOSTCC scripts/mk_elfconfig
MKELF scripts/elfconfig.h
HOSTCC scripts/file2alias.o
HOSTCC scripts/modpost.o
HOSTLD scripts/modpost
HOSTCC scripts/pnmtologo
HOSTCC scripts/bin2c
SPLIT include/linux/autoconf.h -> include/config/*
CC arch/i386/kernel/asm-offsets.s
CHK include/asm-i386/asm_offsets.h
UPD include/asm-i386/asm_offsets.h
CC init/main.o
In file included from include/linux/sched.h:23,
from include/linux/module.h:10,
from init/main.c:15:
include/linux/smp.h:33: error: conflicting types for 'smp_send_reschedule'
include/asm/smp.h:41: error: previous declaration of 'smp_send_reschedule' was here
include/linux/smp.h:33: error: conflicting types for 'smp_send_reschedule'
include/asm/smp.h:41: error: previous declaration of 'smp_send_reschedule' was here
In file included from include/linux/unistd.h:9,
from init/main.c:19:
include/asm/unistd.h:397: warning: conflicting types for built-in function '_exit'
make[1]: *** [init/main.o] 오류 1
make: *** [init] 오류 2
아래 코드를 이용해서 패키지를 설치해 보세요.
sudo apt-get install qt3-dev-tools libqt3-mt-dev # if you plan to use 'make xconfig'
sudo apt-get install libncurses5 libncurses5-dev # if you plan to use 'make menuconfig'
2.6.0 이 굉장히 오래된 소스이다보니 최신의
2.6.0 이 굉장히 오래된 소스이다보니 최신의 컴파일러(GCC)와의 호환성 문제인듯 하네요.
특별한 이유가 없다면 최근 커널 (적어도 2.6.2X...) 를 사용해보세요.
댓글 달기