All category에 해당하는 글 51

linux kernel 컴파일 하기

Study-programing/linux-kernel|2015. 6. 16. 11:48

linux kernel compile


본 문서는 EeS에 의해 작성되었으며, 원 저자 표시시 자유로운 수정및 배포가 가능합니다.

필요한 패키지 설치

sudo apt-get install build-essential libncurses5 libncurses5-dev kernel-package
위와 같이 입력하여, 컴파일에 필요한 패키지를 설치하도록 합니다.

configuration

우선 원하는 커널 소스를 가져옵니다.(커널 소스를 가져오는 과정 및 수정하는 과정은 생략합니다.)
이후, 커널을 컴파일 하기 위하여 config파일을 설정해 주어야 합니다.
우리는 ubuntu 환경 기준으로, 기존 config파일을 가져오도록 합니다.
(아래 코드는, kernel 소스를 저장한 위치에서 작성하여야 합니다.)

sudo cp /boot/config-[현재 버전] ./.config
(tip /boot/config 까지 작성 한 다음 tab버튼을 (빠르게)두번 누르면 자동완성 혹은 입력 가능한 목록이 뜬다.)

이후
make menuconfig
명령어를 이용하여, config 파일을 적용시켜 줍니다.

1. 진입
2. <load> 선택
3. `.config` 라고 작성
4. save 선택

build

make -jN

을 입력하여 컴파일을 합니다.
N 위치에는 정수값이 들어가며, 멀티코어를 활용하여 컴파일 하기 위한 수치 입니다.
통상적으로 본인 컴퓨터의 논리적 코어 수 +-1 정도가 적절하다고 합니다.

module등이 변하였을 수 있으므로, module도 컴파일 해주도록 합니다.

make modules

install

우선 만들어 놓은 module들을 설치하도록 합니다.

sudo make modules_install

이후, 컴파일 한 커널을 설치하도록 합니다.

sudo make install

end

sudo reboot

을 통해 재시작을 하여 정상적으로 부팅이 되는지 확인하도록 합니다.

여기까지 과정을 통하여 컴파일 및 설치를 완료 합니다.


댓글()