[질문] 2.6에서 2.4 컴파일

naisr00t의 이미지

2.4 커널을 쓸 때가 있어서 2.4를 설치 중에 있습니다.
make menuconfig --> make dep --> make clean
--> make bzImage --> 모듈 설치

이런식으로 하겠지요?
그런데, make menu config 때 기본적인 것 그러니까 수정하지 않고, 저장만 하고 exit를 했습니다. 즉, 아무것도 건드지 않았지요.
그리고 다음을 했는데, make bzImage 때 아래와 같은 에러가 납니다.
무슨 문제일까요? 저는 프로세서가 하나입니다. ^^ (그문제가 아닐거라는 예상에.. ^^)
고수님들 답변 기다리겠습니다.

[root@Ryan linux]# make bzImage
gcc -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -o scripts/split-include scripts/split-include.c
scripts/split-include include/linux/autoconf.h include/config
gcc -D__KERNEL__ -I/usr/src/linux/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=i686   -c -o init/main.o init/main.c
In file included from /usr/src/linux/include/linux/sched.h:23,
                 from /usr/src/linux/include/linux/mm.h:4,
                 from /usr/src/linux/include/linux/slab.h:14,
                 from /usr/src/linux/include/linux/proc_fs.h:5,
                 from init/main.c:15:
/usr/src/linux/include/linux/smp.h:29: error: conflicting types for 'smp_send_reschedule'
/usr/src/linux/include/asm/smp.h:39: error: previous declaration of 'smp_send_reschedule' was here
/usr/src/linux/include/linux/smp.h:29: error: conflicting types for 'smp_send_reschedule'
/usr/src/linux/include/asm/smp.h:39: error: previous declaration of 'smp_send_reschedule' was here
In file included from /usr/src/linux/include/linux/unistd.h:9,
                 from init/main.c:17:
/usr/src/linux/include/asm/unistd.h:345: warning: conflicting types for built-in function '_exit'
codebank의 이미지

음...
make menuconfig를하고나서 아무행동도 않했는데 그런 메시지가 나왔다면
make menuconfig를 시스템에 맞게 수정해 주어야할겁니다.
너무 당연한 답변같아서... :oops:

------------------------------
좋은 하루 되세요.

sjpark의 이미지

naisr00t wrote:
2.4 커널을 쓸 때가 있어서 2.4를 설치 중에 있습니다.
make menuconfig --> make dep --> make clean
--> make bzImage --> 모듈 설치

이런식으로 하겠지요?
그런데, make menu config 때 기본적인 것 그러니까 수정하지 않고, 저장만 하고 exit를 했습니다. 즉, 아무것도 건드지 않았지요.
그리고 다음을 했는데, make bzImage 때 아래와 같은 에러가 납니다.
무슨 문제일까요? 저는 프로세서가 하나입니다. ^^ (그문제가 아닐거라는 예상에.. ^^)
고수님들 답변 기다리겠습니다.

[root@Ryan linux]# make bzImage
gcc -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -o scripts/split-include scripts/split-include.c
scripts/split-include include/linux/autoconf.h include/config
gcc -D__KERNEL__ -I/usr/src/linux/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=i686   -c -o init/main.o init/main.c
In file included from /usr/src/linux/include/linux/sched.h:23,
                 from /usr/src/linux/include/linux/mm.h:4,
                 from /usr/src/linux/include/linux/slab.h:14,
                 from /usr/src/linux/include/linux/proc_fs.h:5,
                 from init/main.c:15:
/usr/src/linux/include/linux/smp.h:29: error: conflicting types for 'smp_send_reschedule'
/usr/src/linux/include/asm/smp.h:39: error: previous declaration of 'smp_send_reschedule' was here
/usr/src/linux/include/linux/smp.h:29: error: conflicting types for 'smp_send_reschedule'
/usr/src/linux/include/asm/smp.h:39: error: previous declaration of 'smp_send_reschedule' was here
In file included from /usr/src/linux/include/linux/unistd.h:9,
                 from init/main.c:17:
/usr/src/linux/include/asm/unistd.h:345: warning: conflicting types for built-in function '_exit'

커널 컴파일 할때 사전에 해야 할 몇가지 작업 중 하나가

폴더 링크 제대로 거는겁니다.

2.6 쓸때 걸었던 2.6 소스 링크를
2.4 컴파일할때 쓰고자 하니.. 이 어찌 궤컴파일(?) 아니겠슴까?