메뉴 구성
menuconfig![]() |
![]() Linux 버전 4.4.2의 menuconfig | |
기입처 | C |
---|---|
운영 체제 | 리눅스 |
유형 | 빌드 자동화 도구 |
면허증. | GNU 일반 공중 라이선스 |
웹 사이트 | www |
make menuconfig
는 Linux 소스를 구성할 수 있는 5가지 유사한 도구 중 하나이며 소스 코드를 컴파일하기 위해 필요한 초기 단계입니다. make menuconfig
메뉴 기반 사용자 인터페이스를 사용하여 컴파일할 Linux 기능(및 기타 옵션)을 선택할 수 있습니다.보통 명령어를 사용하여 호출됩니다.make menuconfig
menuconfig는 Linux Makefile의 타깃입니다.
역사
make menuconfig
Linux의 첫 번째 버전이 아닙니다.이전 툴은 Q&A 기반의 유틸리티입니다(make config
,make oldconfig
Linux 설정용 세 번째 툴은 다음과 같습니다.make xconfig
Qt가 필요합니다.또 있다make gconfig
, GTK+ 를 사용합니다.make nconfig
와 유사합니다.make menuconfig
.
이러한 툴은 모두 내부적으로 Kconfig 언어를 사용합니다.Kconfig는 임베디드 디바이스용 부트로더인 Das U-Boot, 임베디드 Linux 시스템 생성 도구인 Buildroot, 임베디드 시스템용 단일 실행 가능한 셸 유틸리티 도구함인 BusyBox 등 다른 프로젝트에서도 사용됩니다.
이전 버전과 비교한 이점
심플한 디자인이지만make menuconfig
Q&A 기반의 설정 툴에 상당한 이점을 제공합니다.make oldconfig
가장 주목할 만한 것은 기본 검색 시스템과 ""와는 다른 파일 이름으로 파일을 로드 및 저장할 수 있는 기능입니다..config
".make menuconfig
사용자가 기능 사이를 직접 이동하거나 뒤로 이동할 수 있습니다.make config
를 눌러서↵ Enter 키를 여러 번 눌러 특정 기능의 Configuration에 선형으로 네비게이트합니다.
사용자가 이전 버전에 만족하는 경우.config
파일, 사용make oldconfig
는 이 이전 파일을 사용하여 가능한 모든 질문에 대답하고 대화형으로 새로운 기능을 제시합니다.이는 버전 업그레이드를 위한 것이지만 다른 경우에는 적절할 수 있습니다.
make menuconfig
시스템 리소스에 대한 부하가 가볍습니다.make xconfig
(버전 2.6.31.1(이전에는 Tk)에서 Qt를 사용) 또는make gconfig
GTK+를 사용합니다.대부분의 기능을 무시할 수 있습니다.make config
이렇게 하면 불완전하거나 크기가 큰 커널을 구성할 가능성이 높아집니다.첫 번째 명령어는.config
Linux 배포판에 포함된 파일을 사용하면 커스텀 커널을 쉽게 구성할 수 있습니다.
를 편집하는 것보다.config
손으로.make menuconfig
에 메뉴 옵션에서 [Help]버튼을 눌러 각 기능에 대한 설명을 나타냅니다.또, 일부(버전 2.6.31.1의 프라이머리) 의존성 체크가 추가되었습니다.make oldconfig를 사용하면 의존관계 체크를 한 번에 수행할 수 있지만 사용자가 수동으로 변경한 기능을 검색하여 필요한 기능이 여전히 활성화되어 있는지 확인해야 합니다.
사실상 양쪽을 모두 사용하여make menuconfig
그리고.make oldconfig
, diff, (cvs 및 적절한 텍스트에디터도 있습니다)는 유연성과 신뢰성이 가장 뛰어납니다.Linux 의 설정에는 상당한 작업이 필요하기 때문에, 유저는 Linux 의 백업을 하는 것을 강하게 추천합니다(즉,cp /usr/src/linux*/.config ~/savemywork.config
).
도움말 정보는 Kconfig라는 다양한 파일의 커널 소스 트리에 배포됩니다.
의존 관계
사용방법make menuconfig
, Linux 소스는 요건, 제조 도구, C 컴파일러 및 ncurses 라이브러리입니다.
키 스트로크
키 스트로크 | 의미. |
---|---|
? | 옵션 설명 및 힌트/도움말 |
←→↑↓PgUpPgDn | 커널 기능 및 menuconfig 명령을 탐색합니다. |
Esc+Esc | menuconfig를 종료하거나 명령을 취소합니다. |
↵ Enter | 명령을 활성화하거나 분기를 확장합니다. |
y | 이 기능을 컴파일하여 커널 내부에 포함합니다. |
m | 이 기능을 커널과는 별도로 모듈로 컴파일합니다. |
n | 기능을 컴파일하지 마십시오. |
/ | 설정 파라미터를 검색합니다. |
기호
기능의 좌측에는, 2개의 구두점으로 둘러싸인 설정(y, M, 또는 공백)이 있습니다.
기호. | 의미. |
---|---|
< > | 종속성이 없습니다. |
[ ] | 종속성을 사용하려면 이 값을 컴파일(y)하거나 컴파일(n)하지 않아야 합니다. |
{ } | 의존관계에서는 이것이 모듈(m) 또는 컴파일인(y)이어야 합니다. |
- - | 종속성을 가지려면 이를 컴파일(y)해야 합니다. |
제공된 종속성 정보는 원시 정보이므로 종속 기능의 이름은 알 수 없습니다.
기호. | 의미. |
---|---|
---> | 이 분기를 새 창으로 확장하기 위해 사용합니다. |
(실험) | 불안정/낮은 코드 주의. |
(신규) | 이전 버전의 Linux에는 없는 옵션입니다. |
(추천) | 향후 버전에서 삭제될 옵션입니다. |
modules_install 및 install 이외에도 많은 make target이 있기 때문에 사용자는 Linux README을 읽을 것을 권장합니다.각각 다른 기능을 활성화하거나 tinyconfig 또는 allyesconfig와 같은 다른 인터랙티브인터페이스를 사용하여 커널을 설정합니다.
단순한(그러나 효과적인) 워크플로우
make menuconfig
- 다음으로 압축된 커널과 그 모듈을 긴 프로세스로 빌드합니다.
make
. - 다음과 같은 원하는 방법으로 설치
make modules_install
,make install
.
「 」를 참조해 주세요.
레퍼런스
외부 링크
