표준 라이브러리를 어떻게 크로스 컴파일할 수 있나요?

표준 라이브러리를 어떻게 크로스 컴파일할 수 있나요?

ARM용 크로스 컴파일러를 설정하려고 합니다. 나는 팔로우했다이 튜토리얼이제 크로스 컴파일러를 실행하여 다음을 얻을 수 있는 지점에 도달했습니다.

arm-unknown-eabi-gcc (GCC) 4.8.4 Copyright (C) 2013 Free Software
Foundation, Inc. This is free software; see the source for copying
conditions.  There is NO warranty; not even for MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE.

하지만 Dropbear(컴파일하려는 소프트웨어)를 ./configure하려고 하면 오류가 발생합니다.

checking for gcc... /home/josh/opt/cross/bin/arm-unknown-eabi-gcc
checking whether the C compiler works... no
configure: error: in `/home/josh/src/dropbear-2016.74':
configure: error: C compiler cannot create executables
See `config.log' for more details

나는 이것이 대상 시스템에 대한 표준 라이브러리가 아직 없기 때문이라고 생각합니다. 왜냐하면 내가 따라온 튜토리얼에서 다음과 같이 언급했기 때문입니다.

이 컴파일러가 일반 C 프로그램을 컴파일할 수 없다는 점에 유의하십시오. 크로스 컴파일러는 표준 헤더 중 하나를 #include하려고 할 때마다 오류를 뱉어냅니다(실제로 플랫폼 독립적이고 컴파일러 자체에서 생성된 일부 선택된 헤더는 제외). 이것은 매우 정확합니다. 아직 대상 시스템에 대한 표준 라이브러리가 없습니다!

내 타겟에 대한 표준 라이브러리를 어떻게 얻거나 구축할 수 있습니까?

답변1

sudo apt-get install gcc-arm-linux-gnueabi나는 수동으로 구축한 모든 크로스 컴파일러 항목을 삭제하고 즉시 작동하는 것처럼 보이는 를 수행하여 이 문제를 해결했습니다 .

관련 정보