SD카드 수동 마운트 하기
mount 하려는 디렉토리 생성
sudo mkdir /mnt/sdcard
디렉토리의 생성 후 drvfs를 이용하여 마운트를 진행
sudo mount -t drvfs D: /mnt/sdcard
수동으로 마운트를 해제하려면 아래의 명령을 이용합니다. (마운트 위치의 파일이 사용중이거나, 현재 위치가 마운트 위치가 아니어야 합니다)
sudo umount /mnt/sdcard

커널 컴파일 환경 구축하기
- 컴파일에 필요한 파일 설치
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install -y git bc bison flex libssl-dev make libc6-dev libncurses5-dev \\
crossbuild-essential-armhf
// crossbuild-essential-armhf는 32비트용 크로스 컴파일러

커널 아키텍처 확인 (uname)
uname -a
예시 출력:
Linux raspberrypi 5.10.17-v7+ #1421 SMP ... armv7l GNU/Linux
- v7, v7+ → kernel7.img로 부팅
- v7l+ → kernel7l.img로 부팅
- v8+ → kernel8.img (64bit 커널)로 부팅
리눅스 커널 다운로드하기
다음의 명령을 이용하여 커널 최신버전을 다운로드 합니다.
주의할 내용은 앞의 단계에서 버전이 일치되는 것을 다운로드 받아야 합니다. 6.12.25인 경우는 rpi-6.12.y를 다운로드 합니다.
cd ~
git clone --depth=1 <https://github.com/raspberrypi/linux.git> -b rpi-6.12.y
cd linux
커널 컴파일 준비하기
명령을 이용하여 환경변수를 선언
export ARCH=arm
export CROSS_COMPILE=arm-linux-gnueabihf-
커널 설정하기
make bcm2709_defconfig

커널 컴파일
make -j$(nproc) zImage modules dtbs
생성되는 주요 출력
- arch/arm/boot/zImage // 커널 이미지
- arch/arm/boot/dts/*.dtb // 디바이스 트리 파일
- modules/ — 커널 모듈
커널 복사 (SD카드 또는 네트워크 사용
(SD카드 /mnt/d에 마운트된 경우):
cp arch/arm/boot/zImage /mnt/d/kernel7.img
cp arch/arm/boot/dts/bcm2710-rpi-3-b.dtb /mnt/d/
cp -r arch/arm/boot/dts/overlays /mnt/d/
라즈베리파이3는 bcm2710-rpi-3-b.dtb 사용
커널 소스 위치 및 defconfig 확인
cd linux
ls arch/arm*/configs/bcm*.defconfig

'ARM_core 기반 리눅스 BSP 개발 > Raspberry_PI Kernel build' 카테고리의 다른 글
| [Raspberry_PI]_QEMU (0) | 2025.06.23 |
|---|---|
| [Raspberry_PI]_GPIO PIN 제어 (1) | 2025.06.18 |
| [Raspberry_PI]_Linker_Script (0) | 2025.06.17 |
| [Raspberry_PI]_env_환경 변수 (0) | 2025.06.17 |
| [Raspberry_PI]_time_명령 (0) | 2025.06.17 |