2

「rubyists の錆」チュートリアルを開始しましたが、次のコードでつまずきました。

extern mod std;

#[test]
fn this_tests_code() {
    println("")
}

fn main() {
}

これをコンパイルしようとすると、次のようになります。

> rustc testing.rs
testing.rs:1:0: 1:0 error: multiple matching crates for `core`
testing.rs:1 extern mod std;
             ^
note: candidates:
note: path: /usr/local/lib/rustc/x86_64-apple-darwin/lib/libcore-c3ca5d77d81b46c1-0.5.dylib
note: meta: name = "core"
note: meta: vers = "0.5"
note: meta: uuid = "c70c24a7-5551-4f73-8e37-380b11d80be8"
note: meta: url = "https://github.com/mozilla/rust/tree/master/src/libcore"
note: path: /usr/local/lib/rustc/x86_64-apple-darwin/lib/libcore-c3ca5d77d81b46c1-0.6.dylib
note: meta: name = "core"
note: meta: vers = "0.6"
note: meta: uuid = "c70c24a7-5551-4f73-8e37-380b11d80be8"
note: meta: url = "https://github.com/mozilla/rust/tree/master/src/libcore"
error: aborting due to previous error

私はrustc 0.6を使用しています。私はそれが何をしているのかわからないので、誰かが私に洞察を与えることができますか? ありがとう!

4

1 に答える 1

5

0.5 と 0.6 の 2 つのバージョンの libstd がインストールされているようです。次の場所にある古いものを削除する必要があります。

/usr/local/lib/rustc/x86_64-apple-darwin/lib/libcore-c3ca5d77d81b46c1-0.5.dylib

または、リンクしたいライブラリについて錆びることをより具体的にします:

extern mod std (vers = "0.6");
于 2013-05-29T14:16:11.683 に答える