0

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

#[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错了,但我不知道我应该做什么。

4

1 回答 1

2

您需要来自 crates.io 的活塞窗口板条箱。只需将其添加到您的Cargo.toml, 依赖项下:

piston_window = "0.51.1"

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

于 2016-07-31T16:27:02.867 回答