2011-12-29 3 views
15

내 Mac OSX (Lion 10.7.1, XCode 4.1) 버전에는 LLVM 3.0svn과 Clang 2.1이 있습니다. current versions은 LLVM 3.0 및 Clang 3.0입니다.Mac OSX에서 LLVM 및 Clang을 업데이트하는 방법은 무엇입니까?

XCode web site에서 최신 버전 (4.2.1)은 여전히 ​​LLVM 2.0을 사용하고있는 것으로 보이며 이는 실수로 보입니다.

최신 XCode를 설치하는 경우 알고 계십니까? LLVM/Clang의 최신 버전을 구할 예정입니까?

가능한 문제를 알고 있습니까? installing Clang manually?

일단 설치되면 새로운 Clang이 내가 가지고있는 모든 IDE (예 : NetBeans)에서 자동으로 사용됩니까?

+2

또한 Apple은 llvm/clang에 대해 자체 버전 관리를 사용함에 유의하십시오. 그래서 Apple LLVM 3.0/clang 3.0은 llvm.org의 LLVM 3.0과 다릅니다. 후자는 최근입니다. –

답변

8

소프트웨어 공급 업체는 전통적으로 빌드 도구를 업데이트하고 좋은 이유가 있습니다. Apple에서 제공하고 수정 한 빌드 도구의 공개적으로 지원되는 최신 버전을 사용하려면 실행중인 OS X 릴리스의 최신 Xcode 버전을 사용하십시오. 일반적으로 애플이 심각한 버그 같은 오픈 소스 컴포넌트의 최첨단 버전으로 업데이트하지 않은 데는 좋은 이유가있다. Apple에서 제공 한 수정이 필요없고 가장자리에 서지 않아도됩니다. 즉, Apple의 지원이없고 알려진 문제를 발견 할 가능성이 있으며 컴파일 된 파일을 다른 사람의 시스템에 제공 할 계획이 아니라면 /usr/local/bin 등의 버전을 설치하거나 MacPorts http://www.macports.org/ports.php?by=name&substr=clang과 같은 타사 패키지 관리자를 사용하여 설치할 수 있습니다. 이 아니고은 Xcode가 설치 한 경로에서 파일을 바꾸려고합니다. 그만한 가치가 있니? 당신 만이 그것을 결정할 수 있습니다.

+0

업데이트 : OS X 10.7 용 최신 Xcode 4.3.3에는 최신 버전의 'clang'이 있습니다 : Apple clang version 3.1 (tags/Apple/clang-318.0.61) (LLVM 3.1svn 기반)'. –

+2

Apple의 버전 번호 매기기가 clang과 일치하지 않습니다. Apple clang 3.1은 clang 3.1 이전에 소스 기반으로 구축되었습니다. 이니셜 라이저 목록과 같은 C++ 11 기능이 없습니다. 그들은 또한 버전을 4.4DP에서 4.0으로 끌어 올렸지 만 기능면에서는 여전히 3.1 수준입니다. –

+0

그게 FUD 야, clang의 안정적인 릴리즈는 상당히 안정적이며 FreeBSD와 같은 다른 운영체제는 최신 버전을 추적합니다. – jupp0r

8

웹 사이트가 잘못되었습니다.

그 소리 --version
애플 연타 버전 3.0 (태그/애플/그 소리-211.12) (LLVM의 3.0svn 기준)

그 소리 ++ : 엑스 코드 4.2.1 및 4.2 LLVM 3.0 및 연타 3.0을 포함 --version
애플 연타 버전 3.0 (태그/애플/그 소리-211.12) (LLVM의 3.0svn 기준)

LLVM-g ++ --version
는 i686-사과 darwin11-LLVM-g ++ - 4.2 (GCC) 4.2.1 (Apple Inc. 빌드 5658 기준) (LLVM 빌드 2336.1.00)

,210

LLVM-GCC --version
는 i686-사과 darwin11-LLVM-GCC-4.2 (GCC) 4.2.1 (애플 Inc.에 대한 기반이 5658을 구축)

+0

저는 Xcode 4.4.1을 사용하고 있습니다. 여전히 Apple'clang 버전 2.1 (tags/Apple/clang-163.7.1) (LLVM 3.0svn 기반) 대상 : x86_64-apple-darwin11.4.0 스레드 모델 : posix' –

+0

나는 Xcode와 같은 버전이지만 clang --version 리포트 : Apple clang 버전 4.0 (tags/Apple/clang-421.0.60) (LLVM 3.1svn 기준) 대상 : x86_64-apple-darwin12. 1.0 스레드 모델 : posix. 아마도 이전 버전의 Xcode가 4.4.1과 함께 설치되었을 것입니까? 또한 Xcode의 환경 설정에서 다운로드 탭을 확인하여 명령 행 도구 컴포넌트가 설치되었는지 확인하십시오. –

+0

@JamesMcKinney 설치 한 Xcode 버전으로 설치된 clang 버전에서 시스템을 가리 키도록 명령 줄에서 xcode-select를 실행해야 할 수도 있습니다. – leecbaker

2

(LLVM 2336.1.00 구축) 엑스 코드 4.6 산 사자 10.8.2에서 버전은 다음과 같습니다

$ clang --version 
Apple LLVM version 4.2 (clang-425.0.24) (based on LLVM 3.2svn) 
Target: x86_64-apple-darwin12.2.0 
Thread model: posix 

$ clang++ --version 
Apple LLVM version 4.2 (clang-425.0.24) (based on LLVM 3.2svn) 
Target: x86_64-apple-darwin12.2.0 
Thread model: posix 

$ llvm-g++ --version 
i686-apple-darwin11-llvm-g++-4.2 (GCC) 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.11.00) 
Copyright (C) 2007 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. 

$ llvm-gcc --version 
i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.11.00) 
Copyright (C) 2007 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. 

당신은 너무 앱 스토어 또는 애플 개발자 계정에 직접 다운로드에서 라이온 엑스 코드를 업데이트하고, 그 소리 &를 업데이트합니다 명령 행 도구를 설치할 수 있습니다 llvm을 위의 버전으로.

+0

예상대로, OSX 10.8.3 Xcode 4.6.1이 출시 된 후 clang-425.0.27이 포함되었습니다. –

1

OS X 업데이트 버전 10.9.2는 XCode를 버전 5로 가져옵니다.1 (5B130a) 및 (OS X 용) 최신 안정에 그 소리 :에

$ clang --version 
Apple LLVM version 5.1 (clang-503.0.38) (based on LLVM 3.4svn) 
Target: x86_64-apple-darwin13.1.0 
Thread model: posix 

내 맥 LLVM-GCC와 심볼릭 링크이 그 소리에 있습니다 ++ LLVM-g :

lrwxr-xr-x 1 root wheel  5B 25 Oct 16:48 /usr/bin/llvm-gcc -> clang 
lrwxr-xr-x 1 root wheel  7B 25 Oct 16:48 /usr/bin/llvm-g++ -> clang++ 

내 최신 R 설치는 SHLIB를 빌드 할 때 오류를 일으킬 수있는 llvm-gcc-4.2를 사용하도록 구성됩니다. llvm-gcc-4.2 및 llvm-g ++ - 4.2에 대한 심볼릭 링크 생성 마찬가지로 LLVM 또는 CLANG을 바꾸는 대신 을 사용하면 오류를 해결하기에 충분합니다.

6

당신은 편안하게 homebrew를 사용하여 자신의 LLVM을 구축 할 수 있습니다 :

brew install llvm 

도 버전하는 패키지를 경우에 특정 버전이 필요합니다

+0

이제는 해당 탭이 비어있어 더 이상 작동하지 않습니다. '$ brew tap homebrew/versions'은 "경고 : homebrew/versions은 더 이상 사용되지 않습니다.이 수식은 모든 공식이 마이그레이션됨에 따라 비어 있습니다." 지금이 방법이 있습니까? –

+1

예, 여전히 작동하며 답변을 업데이트했습니다. – jupp0r

관련 문제