이제까지 커널 2.4에서 커널 컴파일할때..
씨퓨를 에슬론으로 선택하면 에러나시는 분들을 위한 팁입니다.
이글은 제가 나우누리에도 올렸음다..
에슬론유저들은 커널 컴파일하면서 가슴이 아프셨져?
전 무진장 아팠답니다.
에슬론으로 선택하면 안대고 이걸 펜티엄3로 하면 되다니..
인텔은 미워 미워 미워 ㅡㅡ;
제가 허접하게나마 해결책을 마련했음다..
저는 와우리눅스 7.0에서 커널 2.4.1을 컴파일했음다.
근데 에로가 나더라고요...
호곡 .. 에로가 아니라 에러.. 지송 --;
다음과 같은 에러..
/usr/src/linux/include/asm/string.h: In function `__constant_memcpy3d':
/usr/src/linux/include/asm/string.h:305: `current' undeclared (first use in this
function)
/usr/src/linux/include/asm/string.h: In function `__memcpy3d':
/usr/src/linux/include/asm/string.h:312: `current' undeclared (first use in this
function)
In file included from /usr/src/linux/include/linux/raid/md.h:51, from init/main.
c:25:
/usr/src/linux/include/linux/raid/md_k.h: In function `pers_to_level':
n-void functioninclude/linux/raid/md_k.h:39: warning: control reaches end of no
make: *** [init/main.o] 오류 1
끝부분이 이렇게 애러가 나시는 분들은..
커널 설정에서 (긍까 menuconfig나 xconfig말임다.) 씨퓨를
에슬론으로 선택한담에..
SMP를 꺼주세요..
semetric multi-processing support인가요? 이거말임다.
그러면 밑에 솰라솰라 이해할수없는 메뉴가 하나더 나오는데
이거 선택하시고..
컴파일 하면.. 음훼훼훼...
위 에러가 사라지져?
캬캬캬 그런데 다른 에러가 튀나오져? ㅡ.,ㅡ
/usr/src/linux/include/linux/kernel_stat.h: In function `kstat_irqs':
use in this function)/linux/kernel_stat.h:48: `smp_num_cpus' undeclared (first
/usr/src/linux/include/linux/kernel_stat.h:48: (Each undeclared identifier is re
ported only once
)
make[2]: *** [ksyms.o] 오류 1
make[2]: 나감 `/usr/src/linux-2.4.1/kernel' 디렉토리
make[1]: *** [first_rule] 오류 2
make[1]: 나감 `/usr/src/linux-2.4.1/kernel' 디렉토리
make: *** [_dir_kernel] 오류 2
이렇게 나실 겁니다.
그러면 kernel_stat.h에서 에러가 났다는 말인디...
이파일을 열어보세요..
위치는 위에 나와 있져?
그럼 에러 메세지에서 말하는 것과 같이..
smp_num_cpus라는 것이 정의가 안대있습니다.
아니... 실은 include된 smp.h에 정의 되어있습니다만
에러가 나는군요..
무식한 코망트는 여기서 전혀 망설임없이..
#define smp_num_cpus 1
를 kernel_stat.h의 젤 위에다 추가했음다..
그랬더니 위에러가 나지 않고 컴파일이 되는군요..
근데 무수히 솟아나는 warnig들..
암튼 컴파일이되고 암튼 부팅도 되고..
물론 씨퓨가 하나인분들 즉 듀얼씨퓨가 아닌분들만
이렇게 해야겠져?
근데 부팅시 루트를 리마운트하는 메세지에서 점 오래걸리네요
나만그런걸까?
그후..................
한글 입력하는데 이상한 증상이 두가지 나타났음다..
증상 one...
넷스케입에서 한글이 입력은되는데.. 겹쳐보입니다.
입력완료하고 다시 웹문서 읽으면 정상입니다.
근데 이거 해결방법이 있더군요..
http://www.kr.freebsd.org/~cjh/freetime/mozilla/netscape-ko 에 가보니.. 한글입력에대해..
나와있더군요..
/usr/X11R6/lib/X11/locale/ko/XLC_LOCALE라는 파일에..
# fs1 class
fs1 {
charset {
name KSC5601.1987-0:GL
}
font {
primary KSC5601.1987-0:GL
substitute KSC5601.1987-0:GL <---요거 추가...
}
}
위에 제가 표시한 줄을 추가하고 넷스케입을 다시 시작하니깐
입력이 잘되네요 전처럼..
반드시... fs1에다 하세요..
증상two
이거는 오히려 편하게 된거 같은데..
한텀이넘이 전에 안하던 짓을 합니다.
가령 'ㅇ'('이응'임다 ㅡㅡ.)를 쉬프트키누르고 입력하면본래..
문자값이 없져?
근데 커널을 위와 같이 컴파일하고 난후에는 'D'가 찍힙니다.
즉 쉬프트+ㅇ 하면 D가 되는 거져..
쉬프트 문자값이 없는 한글의 경우 이렇게 됩니다.
그러니깐 ㅛ, ㅕ, ㅑ, ㅁ, ㄴ, ㅇ, ㄹ, ㅗ, ㅓ, ㅏ, ㅣ
등등등...
암튼 컴팔도 되고 암튼 부팅도 되니.. 기분은 좋은데..
왠쥐 그 수많은 warning들이 아직도 눈앞에 아롱아롱.. ㅡ,.ㅡ
혹시 훨씬 세련된 방법으로 컴파일이된 에슬론 유저계시면..
나도점 가르텨주...
제가 프로그래밍 실력이 짧고 분석하기 귀찮아서..걍
얼렁뚱땅 했음다..
그럼.. 즐거운 리눅싱이 되시길..
--
세상의 모든 컴터에 팽귄이 사는 그날까지
초짜 코망트...