在成功运行`cargo build`

时间:2017-08-18 16:24:21

标签: rust rust-cargo

我一直在尝试编译用Rust编写的项目。当我第一次编译时,我收到了错误

error[E0463]: can't find crate for `argparse`
 --> src/main.rs:6:1
  |
6 | extern crate argparse;
  | ^^^^^^^^^^^^^^^^^^^^^^ can't find crate

这似乎是一个依赖错误意味着我需要使用Cargo。幸运的是,该项目提供了一个Cargo.toml文件供我使用。我成功运行cargo build并尝试再次编译Rust源。

错误仍然存​​在,因此我打开了Cargo.toml来查看。它包含了我的预期

[package]
name = "stones"
version = "0.5.0"
authors = ["cheezgi <zackh@firemail.cc>"]

[dependencies]
argparse = "*"
rustyline = "*"

[profile.dev]
debug = true

我跑了cargo build -v以确保一切按预期进行。

       Fresh unicode-width v0.1.4
       Fresh bitflags v0.4.0
       Fresh libc v0.2.20
       Fresh argparse v0.2.1
       Fresh encode_unicode v0.1.3
       Fresh nix v0.5.1
       Fresh rustyline v1.0.0
       Fresh stones v0.5.0 (file:///Users/eamonolive/projects/stones)
    Finished dev [unoptimized + debuginfo] target(s) in 0.0 secs

我在这里看不到结果有什么问题,看起来所有内容都安装得正确,但编译器仍无法找到argparse的包。

如果它有任何不同,我正在使用rustc 1.19.0。

1 个答案:

答案 0 :(得分:4)

  

我成功运行货物构建并尝试再次编译Rust源。

Cargo为您运行编译器。通过调用cargo build,您已经隐式调用了编译器(rustc),程序已构建并准备好执行:cargo run./target/debug/my-app-name

直接致电rustc非常罕见。