[英]Using a crate in a Cargo project errors with “maybe a missing extern crate”
[英]Missing crate when using rustc but not using cargo
我在 1.2.3 版上使用 epub crate 并且我的 Cargo.toml 格式是这样的
[package]
name = "cl-epub-reader"
version = "0.1.0"
edition = "2021"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]
epub = "1.2.22"
我的 main.rs 是
use epub::doc::EpubDoc;
use epub::doc::NavPoint;
use std::env::args;
fn main() {
let args: Vec<String> = args().collect();
let doc = EpubDoc::new(&args[1]).unwrap();
// assert!(doc.is_ok());
println!("{:?}", doc.mdata("title"));
}
它所做的只是从用户输入中获取使用路径,然后获取标题元数据并打印出来。
当我运行cargo run
它输出一个关于超出范围错误的错误,这是预期的,但是当我运行rustc src/main.rs
,错误是error[E0433]: failed to resolve: maybe a missing crate `epub`?
有谁知道这个问题的原因以及如何解决这个问题? 提前致谢 :)
当您直接调用rustc
,您需要传递适当的选项来告诉编译器在您的计算机上安装 crate 的位置。 cargo
会自动为你处理(你可以使用-v
选项来进行cargo build
来查看它使用的实际rustc
命令行)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.