특정 모듈을 올리기위해 커널을 컴파일 하려면..
글쓴이: innu / 작성시간: 수, 2004/03/24 - 8:48오후
예를들면...
현재 리얼텍 8139칩셋(모듈명 8139too)의 랜카드를 사용하고 있는데 어느날 갑자기 랜카드가 맛이 가서 3com(모듈명 3c59x)꺼로 바꾸어야 한다고 칩시다.
현재 랜카드 모듈은 8139 칩셋밖에 안올라와 있다고 가정합니다.
Quote:
# ls /lib/modules/2.4.22/kernel/driver/net
8139too.o
일단 3com꺼로 바꿔달고 인식시키기 위해서 커널을 컴파일 해야합니다.
Quote:
일반적인 커널컴파일과정
# make mrproper
# make menuconfig
# make dep
# make clean
# make bzImage
# make modules
# make modules_install
....
그런데 위와 같은상황(딸랑 모듈하나만 올리면될때..)에서는 따로 커널 이미지를 만들필요는 없을거 같습니다.
Quote:
버전 그대로고 모듈하나만 올릴때..
# make menuconfig // 다른거 놔두고 3com꺼만 "M"으로 선택
# make dep
# make clean
# make modules
# make modules_install
이전 컴파일 환경을 그대로 사용하니까 make mrproper 빼버리고..
이미지를 만드는게 아니고 모듈만 올리는거니까 make bzImage도 생략해버리고 모듈만 컴파일하면 되지않나요?
Forums:
그러면 됩니다.그런데 그렇게 안해도 되는 것이 모듈소스를 열어보면 맨
그러면 됩니다.
그런데 그렇게 안해도 되는 것이 모듈소스를 열어보면 맨 끝에 모듈소스만 컴파일하는 명령어 보통 써둡니다.
그거 사용하면 됩니다.
이런 부분을 보고 그대로 컴파일하면 모듈이 나오고 그걸 /lib/modules 아래에 옮기면 됩니다.
--------------------------------
윈도위의 리눅스 윈도위의 윈도우 리눅스위의 익스플로러
답변 감사합니다.그대로 해보니까 성공적으로 컴파일 되는군요...
답변 감사합니다.
그대로 해보니까 성공적으로 컴파일 되는군요...
그런데 위의 내용은 모듈만 올리는 경우였는데요.
만약 커널이미지에 올려야 하면 상황이 달라지겠죠?
예를들면, Quota를 설정하기위해 File System의 Quota Support 항목을 "Y"로 선택하면 ...
이는 모듈로 올리는게 아니고 커널이미지로 만드는거니까 make bzImage를 해줘야겠죠?
그리고 새로 생성된 /usr/src/linux/arch/i386/boot/bzImage를 /boot에 특정이름으로 복사하고 lilo 작업수행하고...
제말이 맞죠?
그런데 한편으로 생각해보면 딸랑 하나만 커널이미지에 추가하는데(위에서는 Quota Support => "Y") 커널이미지를 다시 만든다는건 좀 비효율적이라 생각을 합니다.
혹시 다른 방법이 있나요?
Debian Spirit !!!
맞습니다.그래서 달랑 하나만 이미지에 추가하고 싶으면 원래 저장되었던
맞습니다.
그래서 달랑 하나만 이미지에 추가하고 싶으면 원래 저장되었던 configuration이 남아 있읍니다. 거기에다가 저 옵션만 켜준다음에,
# make mrproper
# make menuconfig
# make dep
# make clean
# make bzImage
# make modules
# make modules_install
과정에서 make clean만 안해주면 됩니다. make clean을 안하면 아시다시피 obj는 다 남아있고, 방금 옵션을 켬으로서 영향을 받는애들만 다시 컴파일합니다.
아마 한 30초면 다 끝날겁니다.
--------------------------------
윈도위의 리눅스 윈도위의 윈도우 리눅스위의 익스플로러
댓글 달기