I've recently installed 1.0RC2 on my new macihne, and I'm having some problems compiling resource files. I created a new resource file in Code::Blocks (why the XRC extension instead of RC?) and it didn't compile. After looking around, I found that in the properties, neither the Compile nor Link boxes were checked, and that the compiler variable was set to CPP. I don't understand why these were the defaults for a resource file, but I checked both boxes and changed the compiler variable to WINDRES. Now I'm getting an error because Code::Blocks seems to be using the GCC compiler macro for windres. Here's the log:
Project : OpenGL Application
Compiler : GNU GCC Compiler (called directly)
Directory : C:\Documents and Settings\Jonathan\My Documents\coding\projects\opengl\
--------------------------------------------------------------------------------
Switching to target: default
mingw32-g++.exe -I"C:\Program Files\CodeBlocks\include" -c main.cpp -o .objs\main.o
windres.exe -I"C:\Program Files\CodeBlocks\include" -c icon.xrc -o .objs\icon.o
windres.exe: invalid option -- c
Usage: windres.exe [option(s)] [input-file] [output-file]
The options are:
-i --input=<file> Name input file
-o --output=<file> Name output file
-J --input-format=<format> Specify input format
-O --output-format=<format> Specify output format
-F --target=<target> Specify COFF target
--preprocessor=<program> Program to use to preprocess rc file
-I --include-dir=<dir> Include directory when preprocessing rc file
-D --define <sym>[=<val>] Define SYM when preprocessing rc file
-U --undefine <sym> Undefine SYM when preprocessing rc file
-v --verbose Verbose - tells you what it's doing
-l --language=<val> Set language when reading rc file
--use-temp-file Use a temporary file instead of popen to read
the preprocessor output
--no-use-temp-file Use popen (default)
-r Ignored for compatibility with rc
-h --help Print this help message
-V --version Print version information
FORMAT is one of rc, res, or coff, and is deduced from the file name
extension if not specified. A single file name is an input file.
No input-file is stdin, default rc. No output-file is stdout, default rc.
windres.exe: supported targets: pe-i386 pei-i386 elf32-i386 elf32-little elf32-big srec symbolsrec tekhex binary ihex
Process terminated with status 1 (0 minutes, 0 seconds)
2 errors, 0 warnings
In Settings->Compiler->Other->Advanced options... the command line macro for "Compile single file to object file" is "$compiler $options $includes -c $file -o $object". The command line macro for "Compile Win32 resource file" is "$rescomp -i $file -J rc -o $resource_output -O coff $res_includes". So it appears that even though windres.exe is being called, it's called with the wrong macro. How can I correct this? And how can I change the defaults so I don't have to check the boxes and change the compiler variable for each resource file I create?
Thanks.