[Buildroot] make -dirclean 빌드 최적화를 통해 Pakage, rootfs, cmdline.txt, config.txt 재구성

2025. 12. 24. 15:40·Buildroot
반응형

빌드루트로 패키지를 구성하면서 이 패키지 저 패키지 활성화 했다가 비활성화 하다보면 패키지들끼리 꼬여서 나중에 빌드를 했을때 정작 생겨야할 패키지 라이브러리가 생기지 않을때가 있다.

 

make clean

그럼 깔끔한 상태에서 빌드를 하기 위해 위 명령어로 빌드 폴더를 제거하고 make를 통해 다시 빌드하게 되는데 빌드하는 시간만 30분 가량이 소요되어 패키지가 꼬였을까봐 계속 위와 같은 방법으로 빌드하는 것은 시간낭비다.

 

빌드루트 메뉴얼 중 일부 (출처 : Buildroot)

이는 빌드루트 개발팀에서도 알고 있는 내용이다.

그래서 전체 빌드 패키지에서 선택한 패키지 부분만 골라서 제거할 수 있게 dirclean 명령어를 제공한다.

비슷한 역할을 하는 다른 명령어들도 제공하지만 필자의 경우 dirclean 명령어로 패키지 제거 후 make를 통해 다시 빌드하는 방법을 설명하도록 하겠다.

 

Pakage 재구성


예를 들어 Qt6 패키지 설정에서 eglfs와 관련된 옵션들을 자주 수정하여 그 부분만 다시 빌드하고 싶다고 하자

관련 옵션에서 '?'를 누르거나 'HELP'로 들어가면 위와 같은 창이 뜨게 될텐데 Symbol 영역에서 BR_PAKAGE로 시작하여 이어지는 부분이 패키지명이다.

 

ls output/build | grep qt6base

참고로 위 명령어를 통해 'output/build' 경로에서 패키지명을 검색해보면 해당 패키지를 담고 있는 폴더를 찾을 수 있다.

 

make qt6base-dirclean

 

해당 패키지 폴더와 관련 파일들은 위 명령어를 통해 깔끔하게 제거할 수 있다.

 

make qt6base

그리고 위 명령어를 통해 해당 패키지만 빌드할 수 있다.

 

make

전체 빌드가 목적이라면 make를 통해 다시 빌드해주도록 하자

 

cmdline.txt 및 config.txt 재구성


board/raspberrypi5에 구성되어 있는 cmdline.txt 또는 config.txt 파일을 수정했음에도 빌드 이후 output/images/rpi-firmware, 마운트 이후 boot 파티션의 cmdline.txt와 config.txt 파일에 반영이 되지 않을것이다.

 

make rpi-firmware-dirclean

위 명령어를 통해 패키지를 제거해주고 make를 통해 다시 빌드해주면 반영이 되는 것을 확인 할 수 있을 것이다.

 

rootfs-overlay 재구성


rootfs-overlay 옵션 활성화 상태에서 board/raspberrypi5/rootfs-overlay 내에 있는 루트 파일들도 마찬가지로 수정을 했음에도 빌드 이후 output/target, 마운트 이후 rootfs 파티션에 반영이 되지 않을것이다.

 

rm -rf output/build/buildroot-fs

위 명령어를 통해 폴더를 제거해주고 make를 통해 다시 빌드해주면 반영이 되는 것을 확인 할 수 있다.

rootfs-overlay 빌드의 경우 내부에 makefile이 구성되어 있지않아 dirclean 명령어를 쓸 수 없어 폴더를 직접 삭제해줘야 한다.

 

반응형
저작자표시 비영리 변경금지 (새창열림)

'Buildroot' 카테고리의 다른 글

[Buildroot] cmdline.txt quiet 부팅 옵션으로 부팅 로그 숨기기  (0) 2025.12.24
[Buildroot] Busybox 초기화 시스템의 init.d를 통해 시작 프로그램 등록  (0) 2025.12.24
[Buildroot] 빌드루트 menuconfig GUI 인터페이스(xconfig) 설정  (0) 2025.12.21
[Buildroot] 빌드루트 rootfs 오버레이 설정  (0) 2025.12.21
[Buildroot] 빌드루트 rootfs 파티션 용량 설정  (0) 2025.12.21
'Buildroot' 카테고리의 다른 글
  • [Buildroot] cmdline.txt quiet 부팅 옵션으로 부팅 로그 숨기기
  • [Buildroot] Busybox 초기화 시스템의 init.d를 통해 시작 프로그램 등록
  • [Buildroot] 빌드루트 menuconfig GUI 인터페이스(xconfig) 설정
  • [Buildroot] 빌드루트 rootfs 오버레이 설정
이니셜P
이니셜P
카카오톡 문의 : initial_p 유튜브 : https://www.youtube.com/@gun-ny
    반응형
  • 이니셜P
    #include <이니셜.P>
    이니셜P
  • 전체
    오늘
    어제
    • 분류 전체보기 (93)
      • 협력점 안내 (1)
      • 프로젝트 작업기 (11)
      • 프로젝트 포트폴리오 (3)
      • 끄적끄적 (2)
      • Arduino (11)
      • STM32 (0)
      • ESP32 (8)
      • EasyEDA (0)
      • QT (5)
      • LVGL (0)
      • Buildroot (14)
      • Yocto (2)
      • Git (2)
      • C언어, C++ (18)
      • 프로그래머스 (16)
  • 블로그 메뉴

    • 링크

    • 공지사항

    • 인기 글

    • 태그

      Qt
      Embedded
      계기판
      SN65HVD230
      라즈베리파이
      Buildroot
      모닝
      리눅스
      빌드루트
      0xbe000011
      SError
      임베디드
      아두이노
      can
      esp32
      루트파일시스템
      rootfs
      linux
      Overlay
      RaspberryPi
    • 최근 댓글

    • 최근 글

    • hELLO· Designed By정상우.v4.10.5
    이니셜P
    [Buildroot] make -dirclean 빌드 최적화를 통해 Pakage, rootfs, cmdline.txt, config.txt 재구성
    상단으로

    티스토리툴바