MS resource compiler

The main difference between using the MS resource tools and the GNU tools is that MS rc generates a ".res" file in a special binary resource format, which can be passed directly to MS link, while the GNU linker ld only supports resources in ".o" (same as ".obj") format (although windres can output in both formats). Therefore, to convert commands like this:

    rc foo.rc
    link -out:foo.exe foo.obj foo.res

You need something like the following for the GNU tools:

    windres foo.rc foores.o
    gcc -o foo.exe foo.o foores.o


    * If the rc command has the "/r" switch then you can ignore it (rc actually ignores it too)

    * Preprocessor definition switches like "/dBAR" or "-DBAR" should be converted to "-DBAR"

    * Include path switches ("/i") should be converted to "--include-dir=" (or -I with recent versions of windres)

    * For other switches, consult the documentation for both rc (on MSDN) at and windres at

[from] Owner: "LukeDunstan" Last edited on December 19, 2004 3:54 am by "LukeDunstan"

This wiki is not a forum for discussion of usage issues. Please use the list instead. We do not allow creation of comments by anonymous or untrusted users, on any page.
Site Status

Site maintenance performed successfully, site online Dec 13th 12:00 AM Eastern.