web-dev-qa-db-ja.com

WinMain(C ++ MingW)への未定義の参照

現在、C++を使用してWindowsアプリケーションを作成しようとしています。プログラムをコンパイルするために、MINGW GCCを使用しています。 BTW私はWindows 10にいます。しかし、int WINAPI wWinMain(HINSTANCE hInstance, HINSTANCE, PWSTR pCmdLine, int nCmdShow)ではなくint main()を使用するとすぐにコンパイラに次のメッセージが表示されます。

C:/ MINGW-W64/MINGW64/BIN /社/□/時/時/時/時/時/□X86_64-W64-MINGW32/8.1.0 /□/ x86_64-W64-MINGW32/lib/.. /lib64_LibmingW32_A-CRT0_C.O):CRT0_C.C:(Text.Startup +0x2E):未定義のリファレンス `winmain 'collect2.exeへの参照:エラー:ldが返されました1終了ステータス終了終了コード:1

このWindowsアプリケーションのチュートリアルから得たコード例のコード例: コード例

私はすでにmingwを再インストールしようとしましたが、それは助けませんでした。だからこそ、私はここに誰かが私の問題を助けることができることを望んだ。前もって感謝します!

8
wuzipu

Windows 10(64ビット)にはMINGW-W64を使用します。

このWin32を使用すると

変化する

int WINAPI wWinMain(HINSTANCE hInstance, HINSTANCE, PWSTR pCmdLine, int nCmdShow);
 _

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR pCmdLine, int nCmdShow)
 _

それからそれをコンパイルします

gcc -O2 -Iinclude -std=c99 -D UNICODE -D _win32_IE=0x0500 -D WINVER=0x0500 hw.c -s  -Wl,--subsystem,windows -municode  -lcomctl32 -D WIN_32_LEAN_AND_MEAN -c 
 _

そしてそれをリンクする:

gcc hw.o
 _
0