How do I use the wmain() entry point in Code::Bloc

2020-02-06 07:19发布

问题:

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?

回答1:

Mingw does not fully support unicode. There is a wrapper available if you feel like trying it out. https://github.com/coderforlife/mingw-unicode-main



回答2:

The latest solution is to use the -municode option instead of the mingw-unicode-main wrapper.

For details, see:

  • wWinmain, Unicode, and Mingw