![Ubuntu 20.04.1 LTS의 U-Boot 컴파일 오류](https://linux55.com/image/184719/Ubuntu%2020.04.1%20LTS%EC%9D%98%20U-Boot%20%EC%BB%B4%ED%8C%8C%EC%9D%BC%20%EC%98%A4%EB%A5%98.png)
나는 이것을 따라왔다지도 시간임베디드 시스템에서 기본 부트로더 구성을 설정하는 방법에 대해 설명합니다. 빌드를 못해서 U-boot 부분에서 막히네요.
U 디스크 다운로드
git clone https://github.com/STMicroelectronics/u-boot.git
cd u-boot
git checkout v2018.11-stm32mp-r2.1
소프트웨어 구축
export CROSS_COMPILE=arm-linux-
make stm32mp15_basic_defconfig
make menuconfig
sudo apt install device-tree-compiler
make DEVICE_TREE=stm32mp157a-dk1
make DEVICE_TREE=stm32mp157a-dk1
터미널에 들어가면 다음과 같은 오류 메시지가 표시됩니다.
make: arm-linux-gcc: Command not found
/bin/sh: 1: arm-linux-gcc: not found
dirname: missing operand
Try 'dirname --help' for more information.
scripts/kconfig/conf --syncconfig Kconfig
./scripts/binutils-version.sh: line 18: arm-linux-as: command not found
CHK include/config.h
CFG u-boot.cfg
/bin/sh: 1: arm-linux-gcc: not found
make[1]: *** [scripts/Makefile.autoconf:77: u-boot.cfg] Error 1
make: *** No rule to make target 'include/config/auto.conf', needed by 'include/config/uboot.release'. Stop.
툴체인과 U-boot 폴더를 PATH에 추가했습니다. 에도 arm-linux-gcc
속합니다 arm-training-linux-uclibcgnueabihf
.
저는 일반적으로 임베디드 시스템과 Linux를 처음 접했습니다.
해결책을 찾기 위해 온라인으로 검색했습니다. 문제는 arm(?) 대신 x86을 사용하는 것 같은데 설치하면 lib32bz1
해결되는 것 같습니다. 그러나 그것은 나에게 작동하지 않습니다.
원인은 무엇일까요? 이 문제를 어떻게 해결할 수 있나요?
답변1
교차 컴파일러 경로 오류입니다. 크로스 컴파일러의 경로를 확인하고 cmd 라인 입력을 통해 gcc에 액세스할 수 있는지 arm-linux-gcc
, 크로스 컴파일러에 액세스할 수 있는지 확인합니다.