2012-07-30 3 views
0

새로운 플랫폼 X가 있다고 가정 해 보겠습니다.
GCC를 수정하여 해당 플랫폼에서 C/C++을 컴파일 할 수 있습니까? 그렇다면 그 변화는 무엇이며 얼마나 큰 것입니까?GCC를 사용하여 사용자 정의 된 플랫폼으로 컴파일 할 수 있습니까?

+0

예, 이식이라고합니다. 그리고 플랫폼이 기존 플랫폼과 매우 유사하지 않으면 다소 어려운 작업입니다. LLVM을 고려하십시오. – Mat

+0

새 플랫폼이 기존 플랫폼과 매우 비슷하다면 재 구축 만하면됩니다. 예를 들어 Google 검색을 수행합니다. 크로스 컴파일. –

+0

네, "새로운 플랫폼 X"를 컴파일하도록 GCC를 수정할 수 있습니다. 필요한 노력은 다음 사항에 달려 있습니다. "새로운 플랫폼 X"란 무엇입니까? 기존 아키텍처에서 파생 된 것입니까? 아니면 처음부터 고안 한 것입니까? – ArjunShankar

답변

3

완전히 완료 할 수 있지만 완전히 새로운 아키텍처 인 경우 매우 큰 작업이됩니다.

것들 중 일부를 당신은해야 할 것 :

  • 말했다 어셈블리 코드를 조립 (즉, 포트 GAS) 할 수있는 어셈블러
  • 쓰기 C 컴파일러는 프로세서
  • 에 대한 어셈블리 코드를 생성합니다
  • (가능한) 프로세서에 특정 옵션에 관련된 기능을 갖는 링커 (LD)를 연장
  • (가능) (및 objcopy의 objdump와 같은) 바이너리 유틸리티 포트의 다른 부분

칩 제조업체가 이미 GCC 포트 (또는 다른 C 컴파일러)를 제공하지 않았습니까? 그리고 당신이 칩 메이커라면; 이 사용자 정의 프로세서가 실제로 필요한지 또는 ARM (예 : ARM, AVR, PIC 등)이 제대로 지원되는 기존 프로세서로 수행 할 수 있습니까?