2011-03-19 4 views
0

저는 iOS 개발자입니다. 컴파일러가 어떻게 작동하는지 모르겠습니다. LLVM GCC 4.2, Xcode 4 기본 컴파일러 및 GCC 4.2 컴파일러의 차이점은 무엇입니까? Xcode 3 기본값 컴파일러.컴파일러 차이점

+0

Apple이 gcc에서 LLVM으로 전환 중입니다. gcc 4.2는 오래되었지만 안정적입니다. LLVM은 새롭고 "최첨단"입니다. 당신은 돈을 지불하고 선택을 취합니다. –

답변

2

여기 내 이해

입니다
  • GCC 4.2은 C, C++ 및 목표 - C와 함께 작동 (대부분) 주식 표준 오픈 소스 GNU C 컴파일러입니다. 꽤 많은 표준 컴파일러가 모든 오픈 소스에 사용되었고, 실제로 검증되었습니다. 그러나 오래된 기술, 즉 컴파일러이기 때문에 다른 용도로 사용할 수 없습니다. 그리고 매우 일반적인, CPU 및 플랫폼에 무관심합니다.

  • LLVM은 차세대 컴파일 소프트웨어입니다. 구문 및 의미 상 인식하고 바이트 코드로 컴파일 한 다음 원시로 컴파일하고 IDE 및 기타 도구에서 지식을 사용할 수 있도록 후크를 제공합니다. Apple이 자동 완성 기능을 개선하고 fixit을 구현하고 Xcode 4에서 빌드 및 분석 작업을 수행 할 수 있도록하는 인식입니다. LLVM은 Apple의 미래이자 GCC의 미래입니다. LLVM은 최적화가 더 똑똑해 지므로 엄격한 코드를 생성합니다. 또한 LLVM은 어느 시점에서보다 동적 인 언어 바인딩을 허용합니다.

  • LLVM GCC는 이전 GCC 백엔드 컴파일러에서 LLVM의 구문 및 의미 사전 처리입니다.

내가 그들을 사용하는 방법

  • 그것은 나를 일체의 문제를 경고 유지로 내가 개발하는 동안 LLVM을 사용합니다. 레거시 코드에서 처음 실행했을 때 도움이되었고 몇 가지 문제점을 발견했습니다.

  • 저는 GCC를 사용하여 iOS 3.1.3 응용 프로그램의 최종 실행 파일을 생성하고 LLVM은 모든 iOS 4.0/Mac 10.6 응용 프로그램을 생성합니다.