
빌드루트로 패키지를 구성하면서 이 패키지 저 패키지 활성화 했다가 비활성화 하다보면 패키지들끼리 꼬여서 나중에 빌드를 했을때 정작 생겨야할 패키지 라이브러리가 생기지 않을때가 있다.
make clean
그럼 깔끔한 상태에서 빌드를 하기 위해 위 명령어로 빌드 폴더를 제거하고 make를 통해 다시 빌드하게 되는데 빌드하는 시간만 30분 가량이 소요되어 패키지가 꼬였을까봐 계속 위와 같은 방법으로 빌드하는 것은 시간낭비다.

이는 빌드루트 개발팀에서도 알고 있는 내용이다.
그래서 전체 빌드 패키지에서 선택한 패키지 부분만 골라서 제거할 수 있게 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 |