Also check out Cygwin, DJGPP & Mingw. It's fairly easy to setup a toolchain for either of them under Linux that will output Windows executable code. I have all 3 setup under Slackware 10. Best I recall DJGPP was the most difficult to get working. There is a good guide for doing a Cygwin toolchain at
colinux. The only bad thing about a Cygwin toolchain is that your app will require the cygwin1.dll be available for running it. All I use them for is CLI apps though.