我试图在我的程序中使用prod-app-stateful-set
crate。
rustc
我还在#[macro_use]
extern crate rustc;
extern crate rustc_typeck;
extern crate syntax;
extern crate syntax_pos;
use rustc::hir;
fn main() {
println!("Hello, world!");
}
文件中添加了额外的依赖项。
Cargo.toml
[dependencies]
log = "0.4.1"
会发出一堆私密和夜间错误。
cargo run
似乎货物需要来自error: use of unstable library feature 'rustc_private': this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via `Cargo.toml` instead? (see issue #27812)
--> src/main.rs:2:1
|
2 | extern crate rustc;
| ^^^^^^^^^^^^^^^^^^^
的稳定箱子,但我不知道应该使用哪个箱子。 crates.io
上没有名为rustc
的箱子。
这是我的Rust安装版本。
我使用crates.io
安装了它。
如何将rustup
crate用于我的程序?
更新
我已将rustc
添加到rustc = "1.23.0"
,但它仍无法处理此错误。
Cargo.toml
答案 0 :(得分:7)
rustc
确实没有在crates.io上发布。
由于rustc
包的API不稳定,您必须切换到夜间编译器并通过在包根(main.rs
或{{1}的开头添加此行来选择加入}):
lib.rs
当然,由于API不稳定,每次更新夜间编译器时,事情可能会在没有警告的情况下中断!
答案 1 :(得分:0)
rustup 组件添加 rustc-dev
然后你可以使用
#![feature(rustc_private)]
extern crate rustc_ast;
根据rustc-auto-publish repo
crate rustc-ap-rustc_ast 与 rust 源代码中的 rustc_ast 相同
racer, rust-analyzer 使用 rustc-ap-rustc_* crates
这是来自 Racer 的 Cargo.toml 的一些代码:
[dependencies.rustc_errors]
package = "rustc-ap-rustc_errors"
version = "712.0.0"
[dependencies.rustc_parse]
package = "rustc-ap-rustc_parse"
version = "712.0.0"
[dependencies.rustc_session]
package = "rustc-ap-rustc_session"
version = "712.0.0"