无法在OS X上编译Rust 0.9

时间:2016-01-03 02:27:44

标签: macos rust

我想在OS X上编译Rust 0.9为explained in the documentation。不幸的是,它在配置期间失败了。

$ ./configure   <--------- fails here
$ make && make install

出现以下错误:

configure: CFG_PERL             := /usr/bin/perl 
configure: CFG_CURLORWGET       := /usr/bin/curl (curl 7.43.0 (x86_64-apple-darwin14.0) libcurl/7.43.0 SecureTransport zlib/1.2.5)
configure: CFG_PYTHON           := /usr/bin/python2.7 
configure: CFG_GIT              := /usr/bin/git (git version 2.3.2 (Apple Git-55))
configure: git: no git directory. disabling submodules
configure: CFG_CLANG            := /usr/bin/clang++ (Apple LLVM version 6.1.0 (clang-602.0.53) (based on LLVM 3.6.0svn))
configure: CFG_CCACHE           :=  
configure: CFG_GCC              := /usr/bin/gcc (Apple LLVM version 6.1.0 (clang-602.0.53) (based on LLVM 3.6.0svn))
configure: CFG_LD               := /usr/bin/ld
configure: on OS X 10.9, forcing use of clang
configure: 
configure: CFG_ENABLE_CLANG     := 1 
configure: error: bad CLANG version: 3.6.0svn, need >=3.0svn

当我在我的盒子上运行clang的版本检查时,我发现我的版本更高了:

~/Downloads/rust-0.10$ clang --version
Apple LLVM version 6.1.0 (clang-602.0.53) (based on LLVM 3.6.0svn)
Target: x86_64-apple-darwin14.5.0

我很困惑,因为它似乎&#34; 3.6.0svn&#34;应满足&#34;需要&gt; = 3.0svn&#34;。

1 个答案:

答案 0 :(得分:2)

如果您查看configure script,您会看到:

case $LLVM_VERSION in
    (3.[2-5]*)
        msg "found ok version of LLVM: $LLVM_VERSION"
        ;;
    (*)
        err "bad LLVM version: $LLVM_VERSION, need >=3.0svn"
        ;;
esac

这限制了LLVM的版本。 可能您可以将其更新为包含3.6。但是,LLVM也可能在那些实际上没有正确链接的版本之间发生了足够的变化。

在Rust 0.9发布后,Rust正式开始支持commit 8c3db5bc中的3.6, 6个月

如果你偶然发现越来越多奇怪的构建失败,我不会感到惊讶;建筑规范是一件很简单的事情。