이번에는 리눅스(우분투)환경에서 리눅스 컴파일 하는 방법에 대해서 알아보고자 합니다.
1) 커널 소스코드 다운받기
리눅스 커널 소스코드는 http://www.kernel.org 사이트에서 다운로드가 가능합니다.
현재 가장 최신 stable 버젼은 4.14.4인 만큼 해당 버전을 다운받아서 설치 해보도록 하겠습니다.
root@ubuntu:/work# wget https://www.kernel.org/pub/linux/kernel/v4.x/linux-4.14.tar.xz linux-4.14.tar.xz 100%[==========================>] 96.10M 244KB/s in 7m 3s 2017-12-10 15:58:28 (232 KB/s) - ‘linux-4.14.tar.xz’ saved [100770500/100770500] |
다음과 같이 wget 명령어를 이용해서 커널 소스코드를 다운 받을 수 있습니다.
wget https://www.kernel.org/pub/linux/kernel/v4.x/linux-4.14.tar.x
명령어를 이용하여 커널소스를 다운을 받고 압축을 해제 합니다.
tar xvf linux-4.14.tar.xz
2) 리눅스 커널 컴파일을 위한 패키지 설치
#apt-get install kernel-package |
3) 커널 설정파일 가져오기
커널을 컴파일하기 위해서는 관련된 설정파일을 셋팅을 사전에 해야 합니다.
우선 /boot 폴더에 있는 현재 시스템의 config 설정을 가져 옵니다.
물론 처음부터 세팅을 할 수 도 있지만... 그건 너무 무모하고 힘든 작업 일수 있기 때문에 현재 시스템의 설정을 가져와서 목적에 맡게 수정할 것을 권고 해 드립니다.
# cp /boot/config-4.4.0-87-generic ./.config # make menuconfig |
이렇게 설정을 하게 되면 최종 모든 설정이 끝나게 됩니다.
4) 커널 컴파일하기 사전에 필수 패키지를 잘 설치했으면 make-kpkg 란 tool이 정상적으로 설치가 되었을 겁니다. make-kpkg는 커널 소스를 컴파일 하고 타겟에 맞게 결과물을 생성합니다.
root@ubuntu:/work/linux-4.14# make-kpkg --initrd --revision=1.0 kernel_image kernel_headers |
5) 커널 설치하기
마지막으로
dpkg -i *.deb 를 수행 하게 되면 해당 커널이 마치게 됩니다.
'리눅스 커널 프로그래밍' 카테고리의 다른 글
커널 소스코드 분석 준비 (vim, ctag) (0) | 2017.12.13 |
---|---|
리눅스 커널 빌드시 에러 발생 대처방안 (openssl) (0) | 2017.12.11 |
리눅스 커널 - 시스템 콜 (3) (0) | 2017.12.06 |
리눅스 커널 - 시스템 콜 (2) (0) | 2017.12.03 |
리눅스 커널 - 시스템 콜 (1) (0) | 2017.11.23 |