문제

그래서 저는 새로운 프로그래머이며 방금 GCC를 얻기 위해 MacBook에 Xcode를 설치했습니다. Xcode가 OSX에서 GCC를 얻는 유일한 방법이라고 생각합니다. 이제 C ++에서 Hello World 응용 프로그램을 실행할 때 G ++는 버전 4.0.1이라고 말하지만 G로 시작하는 명령을 찾으면 G ++ -4.2도 나타냅니다. 4.0.1이 아닌 4.2 기본값을 만드는 방법이 있습니까? 또한 최신 버전 4.4.0으로 GCC를 업데이트하는 방법이 있습니까?

편집 : 좋아, 그래서 나는 Macports를 설치하고 GCC4.4를 설치했으며 터미널에 GCC-MP-4.4로 표시되며 명령 및 물건과 같이 GCC_Select로 기본값을 어떻게 만드는가? 감사.

도움이 되었습니까?

해결책

Macports를 설치하면 GCC Select를 설치 한 다음 GCC 버전을 선택할 수 있습니다.

/opt/local/bin/port install gcc_select

버전이 사용됩니다

port select --list gcc

버전 사용을 선택합니다

sudo port select --set gcc gcc40

다른 팁

나는 그것이 오래된 요청이라는 것을 알고 있습니다. 그러나 여전히 일부에게는 유용 할 수 있습니다. 현재 버전의 macports를 사용하면 포트 명령을 사용하여 기본 GCC 버전을 선택할 수 있습니다. 사용 가능한 GCC 버전을 나열하려면 다음을 사용하십시오.

$ sudo port select - -list gcc

Available versions for gcc:
gcc42
llvm-gcc42
mp-gcc46
none (active)

GCC를 MacPorts 버전으로 설정하려면 :

$ Sudo Port Select-세트 GCC MP-GCC46

나는 이것을 달성하기 위해 부드러운 링크를 사용하는 것이 끔찍하고, 좋은, 끔찍한 생각이라고 말하기 위해 들었습니다.

소프트웨어 작성의 주요 사항 중 하나는 재생산성입니다. 매번 동일한 결과를 얻을 수 있기를 원합니다. 이 시스템은 너무 복잡하여 모든 보이지 않는 오류 원인을 줄이려고합니다.

소프트 링크를 갖는 것은 보이지 않는 오류의 원인입니다. 한 달 안에 잊어 버린 다음 다른 기계로 이동 한 다음 다른 결과를 얻는 이유가 궁금합니다. 또는 시스템을 업그레이드하려고 시도하면 이상하지 않기 때문에 이상한 오류가 발생합니다. 거기에 소프트 링크를 기대합니다.

또한 이는 작동하는 것이 보장되지 않습니다. 특히 올바른 시스템이 포함 된 파일을 얻을 수 있다는 것은 확실하지 않습니다. 파일은 GCC의 반복 사이에 확실히 변경되었습니다.

gcc_select는 예측 가능하게 작동하는 것과 동일한 작업을 수행하는 체계적인 방법입니다. 최악의 경우 버그 보고서를 제출하고 최종 수정 또는 직접 수정할 수 있습니다.

불행히도 :-( gcc_select는 어떤 컴파일러 Xcode가 사용하는지에 영향을 미치지 않으므로 Xcode에서 작업 해야하는 경우 갈 길이 아닙니다 (내가하는).

"gcc_select -l"사용

> gcc_select -l

GCC40 MP-GCC44

> GCC_SELECT MP-GCC44

다음과 같은 레시피를 사용합니다 고향 GCC/G ++ 4.7로 업데이트하는 데 도움이되었습니다.

$ brew tap SynthiNet/synthinet
$ brew install gcc47

게시물에서 찾았습니다 여기.

안에 /usr/bin 유형

sudo ln -s -f g++-4.2 g++

sudo ln -s -f gcc-4.2 gcc

그렇게해야합니다.

상자에 여러 버전의 GCC를 가질 수 있습니다. g++ 전체 경로를 사용하십시오 /usr/bin/g++ 명령 줄 (GCC가 사는 위치에 따라 다름).

프로젝트를 컴파일하려면 어떤 시스템을 사용하는지에 따라 달라지고 Xcode에 대해 잘 모르겠습니다 (기본 ATM에 만족합니다).

편집하다

지금이 있습니다 xcrun Mac에서 적절한 버전의 빌드 도구를 선택하도록 쿼리 할 수있는 스크립트. 와는 별개로 man xcrun 나는이 설명에 대해 Google에 글을 썼다 Xcode 및 명령 줄 도구 이를 사용하는 방법이 거의 요약되어 있습니다.

Apple이 Xcode의 기본 GCC로 배송되는 것은 무엇이든 (10.6, 4.0.1의 4.2.1) Apple Guys와 OS X에서 소프트웨어를 구축하기 위해 "표준"이 잘 테스트 (및 유지)됩니다. 다른 모든 것은 그렇지 않습니다. 따라서 소프트웨어를 개발하거나 GCC/OS X 베타 테스터가 되려면 두 번 생각하십시오.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top