Linux 커널 구성의 형식화된 인쇄

Linux 커널 구성의 형식화된 인쇄

옵션으로메뉴 구성하기그리고nconfig 활성화커널 옵션을 구성하는 좋은 방법을 허용하면 이 계층 구조를 인쇄할 수 있는 방법이 있습니까?

"tree" 명령의 출력과 유사한 내용입니다.

답변1

재생을 도와주신 @jeff-schaller에게 감사드립니다. 저는 Kconfiglib 프로젝트에 기여했으며 이제 이 작업을 위한 새로운 예제 스크립트를 갖게 되었습니다. 이를 사용하는 단계는 다음과 같습니다.

Linux 소스 코드가 포함된 디렉터리에서 저장소를 복제합니다.

root@23e196045c6f:/usr/src/linux-source-4.9# git clone git://github.com/ulfalizer/Kconfiglib.git
Cloning into 'Kconfiglib'...
remote: Counting objects: 3367, done.
remote: Compressing objects: 100% (57/57), done.
remote: Total 3367 (delta 64), reused 89 (delta 50), pack-reused 3259
Receiving objects: 100% (3367/3367), 1.25 MiB | 1.79 MiB/s, done.
Resolving deltas: 100% (2184/2184), done.

메이크파일을 패치합니다:

root@23e196045c6f:/usr/src/linux-source-4.9# patch -p1 < Kconfiglib/makefile.patch
patching file scripts/kconfig/Makefile

기본적으로 .config 파일을 얻으려면 필요에 따라 구성하십시오.

root@23e196045c6f:/usr/src/linux-source-4.9# make menuconfig

구성 파일을 사용하여 스크립트를 실행합니다.

root@23e196045c6f:/usr/src/linux-source-4.9# make scriptconfig SCRIPT=Kconfiglib/examples/print_config_tree.py SCRIPT_ARG=.config

======== Linux/x86 4.9.65 Kernel Configuration ========

[*] 64-bit kernel (64BIT)
    General setup
        ()  Cross-compiler tool prefix (CROSS_COMPILE)
        [ ] Compile also drivers which will not load (COMPILE_TEST)
        ()  Local version - append to kernel release (LOCALVERSION)
        [ ] Automatically append version information to the version string (LOCALVERSION_AUTO)
        -*- Kernel compression mode
                --> Gzip (KERNEL_GZIP)
                    Bzip2 (KERNEL_BZIP2)
                    LZMA (KERNEL_LZMA)
...

그러나 이점은 다양한 커널 구성을 전달하고 변경 사항을 쉽게 일치시킬 수 있다는 것입니다.

root@23e196045c6f:/usr/src/linux-source-4.9# make scriptconfig SCRIPT=Kconfiglib/examples/print_config_tree.py SCRIPT_ARG=/tmp/config1 > config1-list.txt

root@23e196045c6f:/usr/src/linux-source-4.9# make scriptconfig SCRIPT=Kconfiglib/examples/print_config_tree.py SCRIPT_ARG=/tmp/config2 > config2-list.txt

마지막으로 diff 도구가 있습니다.

Kconfiglib 및 print_config_tree.py

관련 정보