I did a fresh install of Code::Blocks (I installed the one for Windows 7 which comes with GCC compiler (codeblocks-10.05mingw-setup.exe)). Then I tried to compile this very simple code:
int wmain(int argc, wchar_t* argv[])
{
return 0;
}
I got this error message:
c:\development\ide\codeblocks\mingw\bin..\lib\gcc\mingw32\4.4.1......\libmingw32.a(main.o):main.c|| undefined reference to `WinMain@16'| ||=== Build finished: 1 errors, 0 warnings ===|
When I try to run my code with a main()
entry, it runs as expected without any errors or warnings. How can I use wmain()
in my code? What modifications do I have to do?
main is the normal program entry point in c & c++ and is passed the command line in single byte characters. wmain is an alternative that is used in many windows programs for unicode programs where it instead gets passed the command line as wide 16 bit unicode characters.
Goto "Settings" menu ⇒ "Debugger..." ⇒ Expand "GDB/CDB debugger" ⇒ Select "Default" ⇒ In "Executable path", provide the full-path name of " gdb.exe ", for example, " c:\Program Files\codeblocks\MinGW\bin\gdb.exe ".
The latest solution is to use the -municode
option instead of the mingw-unicode-main wrapper.
For details, see:
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With