라즈베리파이 0-W에 buildroot로 리눅스 올리려는데
Buildroot toolchain 쓰면 부팅이 되긴 되거든? 근데 make clean 할때마다 툴체인부터 다시 빌드하는 게 너무 오래걸려서 ARM 인포센터에서 12월에 나온 gcc 9.2 툴체인을 받고 그걸로 external toolchain 설정했어
근데 이걸로 빌드하고 부팅하니까 LED 등이 안 깜빡이는거야. 그래서 QEMU용으로 versatile_defconfig 기반 커널 빌드하고 versatile_pb.dtb 올려서 buildroot rootfs 이미지를 QEMU에 올렸더니 attempted to kill init! exitcode=0x00000004 커널패닉이 나오더라고.
그래서 init exit code가 4인 경우를 구글링 오지게 해봤는데 딱히 나오는 게 없어
ARM1176jzf-s에서 blx 관련 이슈가 있다 해서 ( https://developer.arm.com/docs/uan0002/a ) --no_blx_thumb_arm 플래그를 링커에 먹여볼려니까 이건 gcc ld가 아니라 armlink 전용 플래그라길래 시도도 못했고 이게 문제는 아닌거같음. 참고로 같은 커널+DTB로 buildroot toolchain 쓴 rootfs QEMU에 올리면 부팅 잘 돼.
QEMU에서 돌린 부트로그는 https://pastebin.com/zQUiRyri
임베디드쪽은 처음 만져봐서 모르는게 많음 고수형들 조언좀 ㅎ;
댓글 0