使用Piston的图像包来编译程序很慢

时间:2016-03-30 19:00:14

标签: image rust

我使用Piston的图像包来读取JPEG图像的每个像素的尺寸和颜色,但编译程序的速度非常慢。

这是我的示例程序:

extern crate image;

fn main() {
    let img = image::open("example.jpg");
}

每次我修改源代码时,使用货物构建货物构建 - 发布进行编译至少需要13秒!

输出 rustc --version rustc 1.7.0 (a5d1e7a59 2016-02-29)

输出货物 - 版本cargo 0.8.0-nightly (28a0cbb 2016-01-17)

我正在使用Ubuntu 15.10。

2 个答案:

答案 0 :(得分:2)

你制作一个本地内箱并在其中放置extern crate image。只要内箱没有变化,根箱的编制就会很快(2秒)。

<强>根/ Cargo.toml

[dependencies]
wrapper = { path = "wrapper" }

<强>根/ SRC / main.rs

extern crate wrapper;

fn main() {
    let _img = wrapper::open();
}

<强>根/包装/ Cargo.toml

[dependencies]
image = "*"

<强>根/包装/ SRC / lib.rs

extern crate image;

pub use image::{ImageResult, DynamicImage};

pub fn open() -> ImageResult<DynamicImage> {
    image::open("example.jpg")
}

答案 1 :(得分:1)

我们一直在努力提高编译器的速度,但是有些包装箱的编译速度比其他包装箱慢。我对这个特殊的板条箱知之甚少,但现在情况可能就是这样。