windres

Crates.iowindres
lib.rswindres
version0.2.2
sourcesrc
created_at2017-10-20 05:58:39.351691
updated_at2021-02-26 21:41:34.510104
descriptionCompiles Windows resource files (.rc) into a Rust program.
homepage
repositoryhttps://github.com/FaultyRAM/windres-rs
max_upload_size
id36291
size30,268
(FaultyRAM)

documentation

README

windres-rs

Travis CI 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.

Commit count: 43

cargo fmt