我是Rust的新手,我正在尝试使用Conrod library打开一个窗口,就像在 canvas.rs example中所做的那样:

#[macro_use] extern crate conrod;
extern crate find_folder;
extern crate piston_window;

use conrod::{Canvas, Theme, Widget, color};
use piston_window::{EventLoop, OpenGL, PistonWindow, UpdateEvent,     WindowSettings};

fn main() {
    const WIDTH: u32 = 800;
    const HEIGHT: u32 = 600;

    // Change this to OpenGL::V2_1 if not working.
    let opengl = OpenGL::V3_2;

    // Construct the window.
    let mut window: PistonWindow =
    WindowSettings::new("Canvas Demo", [WIDTH, HEIGHT].opengl(opengl).exit_on_esc(true).vsync(true).build().unwrap();
   window.set_ups(60);
}

当我在Conrod项目(从GitHub下载的文件)中的文件中使用它时,此代码有效,但当在我自己的代码中使用它时,此代码不起作用:
extern crate conrod;
extern crate piston_window;

fn main() {
    println!("Hello, world!");
}

使用以下Cargo.toml:

[package]
name = "hello_conrod"
version = "0.1.0"
authors = ["omega"]

[dependencies]
conrod = "0.37.2"

然后编译器告诉我:

error: can't find crate for `piston_window` [E0463]

我猜我的Cargo.toml是错误的,但是我不知道应该怎么做。

最佳答案

您需要来自crates.io的piston_window crate。只需在依赖项下将其添加到您的Cargo.toml中:

piston_window = "0.51.1"

每当您看到extern crate _时,都需要在Cargo.toml文件中添加 crate 。 crates.io上的文档显示了导入 crate 的不同方法(本地,可选地,从Git等)。

关于rust - 无法在我的Rust项目: can't find crate piston_window中使用conrod库,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38685966/

10-13 05:24