#Windows #resource #rc

windres

Compiles Windows resource files (.rc) into a Rust program

3 unstable releases

0.2.1 Jul 18, 2018
0.2.0 Jul 1, 2018
0.1.0 Oct 20, 2017

#8 in Build Utils

Download history 4/week @ 2018-05-05 35/week @ 2018-05-12 25/week @ 2018-05-19 3/week @ 2018-05-26 6/week @ 2018-06-02 2/week @ 2018-06-09 3/week @ 2018-06-16 9/week @ 2018-06-23 11/week @ 2018-06-30 17/week @ 2018-07-07 126/week @ 2018-07-14 337/week @ 2018-07-21 344/week @ 2018-07-28

249 downloads per month

windres-rs

Travis CI AppVeyor Crates.io Docs.rs

windres is a Rust library crate for compiling Windows resource (.rc) files into object files at build time, which are then forwarded to the linker. This allows for embedding icons, version information, native UI data, etc. in binaries compiled from Rust code.

Example

The following example demonstrates how to embed an icon in a binary crate:

// hello-world.rc

1 ICON "hello-world.ico"
// build.rs

extern crate windres;

use windres::Build;

fn main() {
    Build::new().compile("hello-world.rc").unwrap();
}

Usage

You need to install the resource compiler for your target ABI in order for windres to work. Currently the following compilers are supported:

  • windres.exe for GNU targets (included in the mingw-w64 toolchain)
  • rc.exe for MSVC targets (included in the Windows SDK, which can be installed via Visual Studio Installer)

Once the appropriate resource compiler is installed, add windres as a build dependency in Cargo.toml:

[target.'cfg(windows)'.build-dependencies]
windres = "0.2"

Then, create a build script (if you haven't already) and add a reference to windres:

#[cfg(windows)]
extern crate windres;

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Apache-2.0 OR MIT license
  • No runtime deps

Reverse deps