24.01.05 최초 작성
make menuconfig
를 통해 설정 가능buildroot/output/build/linux-custom
에서 빌드ARCH
: 타겟 SOC 설정 (Default : host SOC)CROSS_COMPILE
: 컴파일러 설정 (리눅스는 $(CROSS_COMPILE)gcc
를 통해 컴파일 수행)arm64
: ../../host/bin/aarch64-buildroot-linux-gnu-
로 설정)make ARCH=arm64 CROSS_COMPILE=../../host/bin/aarch64-buildroot-linux-gnu-
에 사용/boot/config-'uname -r'.config
에 설정파일 존재arch/<arch>/configs/
에 설정 파일 리스트 존재 (bcm2711_defconfig
..)buildroot/output/build/linux-custom
에서 make ARCH=arm64 bcm2711_defconfig
입력 시 적용 완료make menuconfig
로 설정한 내용 .config
에 저장, make savedefconfig
로 defconfig
생성defconfig
파일 arch/<arch>/configs/
에 이름 다르게 해 저장menuconfig
make menuconfig ARCH=arm64
make linux-menuconfig
make ARCH=arm64 CROSS_COMPILE=../../host/bin/aarch64-buildroot-linux-gnu-
export CROSSCOMPILE="ccache ../../host/bin/aarch64-buildroot-linux-gnu-
를 통해 빠르게 실행 가능make modules_install
을 통해 모듈 설치INSTALL_MOD_PATH
환경변수를 이용해 설치make INSTALL_MOD_PATH=<dir>/ modules_install
make clean
: 오브젝트 파일 삭제make mrproper
: 자동 생성 파일 (config, backup file
)삭제make distclean
: 완전 초기화arch/<arch>/boot/Image
: 압축되지 않은 이미지arch/<arch>/boot/zImage
, arch/<arch>/boot/bzImage
: 압축된 이미지arch/<arch>/boot/dts/*.dtb
: DTB (Device Tree Blobs)
vmlinux
: 디버깅 정보를 포함한 ELF
파일/buildroot
에서 작업make <config파일 이름>
에서 타겟 보드에 맞는 설정 등록
make linux-menuconfig
에서 관련 설정 진행
make menuconfig
에서 관련 설정 진행
make
로 빌드 진행, /buildroot/output/images
에 이미지 파일 생성됨