x86 이 아닌 arm 계열이므로 gcc 도 arm 계열을 설치해줘야 한다.
귀찮으니까 그냥 xwindow 에서 yum을 통해서 검색함.
근대 none-eabi 옵션이 붙은 컴파일러가 존재한다!
당최 이게 무엇이오!
■ ABI( Application Binary Interface )
응용프로그램 이진 인터페이스. Application과 OS 사이, Application과 Libraries,
그리고 Application과 Component 사이에서 사용되는 Low-Level Interface를 의미한다.
API와의 차이점은
API는 Source Code Level에서의, Programming 관점에서의 인터페이스를 의미하며
ABI는 Binary Level( 이미 Compile된 상태. 즉, Build 후 )에서의 인터페이스이다.
쉽게 말해서, ABI는 이미 Binary로 나온 결과물( 주로 Object ) 간의 연결에 중점을 둔
Binary Level에서의 호환성을 의미한다고 생각하면 된다.
( 예를 들어, Windows 98에서 사용하는 프로그램이 그대로 Windows XP에서도 실행 가능 )
■ EABI( Embedded Application Binary Interface )
임베디드 응용프로그램 이진 인터페이스.
Embedded Software의 자료형, 레지스터 사용 등에 대한 표준 변환을 정의해
다른 Compiler를 사용해 만들어진 Object 들과도 연동할 수 있게 했다.
대표적으로 ARM, IBM의 PowerPC 등에서 사용된다.
■ None - EABI
여기서의 None은 단순히 EABI가 '없다', '아니다'라는 의미가 아니라 "어떤 OS에 특화된 EABI가 아니다" 라는 의미이다.
즉, ARM-None-EABI는 ARM Core를 Target으로 하지만 특정 OS 전용 Binary를 생성하지 않는다라는 의미이다.
사실 ARM Core를 기반으로 하는 Software는 거의 arm-none-eabi-linux 혹은 arm-none-gnueabi-linux를 사용한다.
뭐 이리저리 바이너리 형태로 배포할일이 있다면 EABI 를 써야하겠지만 그럴 필요는 없당께.
설치하고 나니까 컴파일러 이게 이름이 허벌나게 길다.
==========================================================================================================
위의 컴파일러들은 X86 시스템에서 컴파일을 하기 위한 크로스 컴파일러이다. 그냥 gcc 받으면 됨 ;;;;;
[출처] ABI, EABI, 그리고 None-EABI|작성자 dong880510