この例に従って、Rust を試し、単純な HTTP GET リクエストを実行しようとしています。まず、 を実行しcargo new request_learn --bin
てから、サンプル コードを貼り付けてmain.rs
実行しましたcargo build
request git:(master) ✗ cargo build
Compiling request v0.0.1 (file:///Users/soliva/Sites/rust/app/request)
src/main.rs:12:23: 12:27 error: macro undefined: 'fail!'
src/main.rs:12 Err(error) => fail!(":-( {}", error),
^~~~
src/main.rs:17:35: 17:39 error: macro undefined: 'fail!'
src/main.rs:17 Err((_request, error)) => fail!(":-( {}", error),
^~~~
error: aborting due to 2 previous errors
Could not compile `request`.
fail!
マクロを持っていないようなので、ここでマクロを変更しました。次のビルドは言う
request git:(master) ✗ cargo build
Compiling request v0.0.1 (file:///Users/soliva/Sites/rust/app/request)
src/main.rs:1:1: 1:19 error: can't find crate for `http`
src/main.rs:1 extern crate http;
^~~~~~~~~~~~~~~~~~
error: aborting due to previous error
Could not compile `request`.
だから私は追加しますCargo.toml
[dependencies]
http = "0.0.0"
そして、私は再び構築します
request git:(master) ✗ cargo build --verbose
Updating registry https://github.com/rust-lang/crates.io-index
Compiling http v0.0.0-prealpha
Running `rustc /Users/soliva/.cargo/registry/src/github.com-/.cargo/registry/src/github.com-1ecc6299db9ec823/http-0.0.0-prealpha/src/lib.rs:1:1: 1:20 error: The attribute license is currently unknown to the compiler and may have meaning added to it in the future
error: aborting due to previous error
Could not compile `http`.
Caused by:
Process didn't exit successfully: `rustc /Users/soliva/.cargo/registry/src/github.com-1ecc6299db9ec823/http-0.0.0-prealpha/src/lib.rs --crate-name http --crate-type lib -g -C metadata=bec89420f16c6bf6 -C extra-filename=-bec89420f16c6bf6 --out-dir /Users/soliva/Sites/rust/app/request/target/debug/deps --emit=dep-info,link -L dependency=/Users/soliva/Sites/rust/app/request/target/debug/deps -L dependency=/Users/soliva/Sites/rust/app/request/target/debug/deps -Awarnings` (exit code: 101)
非常に長くて重複していたので、エラーメッセージをいくつかカットしました
何か不足していますか?Rust のモジュールとcargo
ドキュメントを調べていますが、道に迷っているようです。