当我运行cargo build
时(甚至在cargo clean
之后),无法编译包装箱v_escape_derive
0.2.1版。我收到以下消息:
error[E0658]: use of extern prelude names introduced with `extern crate` items is unstable (see issue #55599)
--> /Users/***/.cargo/registry/src/github.com-***/v_escape_derive-0.2.1/src/lib.rs:7:5
|
7 | use proc_macro::TokenStream;
| ^^^^^^^^^^
|
= help: add #![feature(extern_crate_item_prelude)] to the crate attributes to enable
我尝试在cargo clean
之前运行cargo build
,但没有成功。
当我之前看到这些extern crate
错误时,问题出在edition =2015
上,但是我项目的版本是2018
,并且项目文件中没有extern crate ...
行。据我所知,问题出在外部lib.rs
文件(即该v_escape_derive
包的内部文件中,所以我认为更改它不是一个好主意)。
答案 0 :(得分:4)
即使在Rust 2018中,some crates are special and must be imported via extern crate
。这包括proc_macro
条板箱。
要解决此问题,请在代码中添加extern crate proc_macro;
行。
据我所知,问题出在[另一个箱子]
然后,您必须针对该板条箱提出问题;在稳定的Rust中不起作用。
特别是关于v_escape_derive 0.2.1;那是旧版本。 current version is 0.4没有这个问题。升级您的依赖项以合并更新。
另请参阅: