2017-02-17 258 views
0
$ make 
g++ main.cpp -I/mingw/include -L/mingw/lib -w -Wall -lSDL2main -lSDL2 -o test 
/usr/lib/../lib/libmsys-2.0.a(libcmain.o): In function `main': 
/msys_scripts/msys2-runtime/src/msys2-runtime/winsup/cygwin/lib/libcmain.c:37: undefined reference to `WinMain' 
/msys_scripts/msys2-runtime/src/msys2-runtime/winsup/cygwin/lib/libcmain.c:37:(.text.startup+0x94): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `WinMain' 
collect2: error: ld returned 1 exit status 

Mingw教程和我的區別是'-lmingw32'選項。如何在MSYS2中設置SDL2?我得到錯誤「未定義的引用'WinMain'」

但MSYS2中沒有'mingw32'文件。

如何解決?

+0

什麼'g ++ --version'輸出? – HolyBlackCat

+0

我的g ++版本是6.3.0。 – Gakgu

+0

謝謝,但還有別的嗎?它是否說它確實是一個mingw版本?我只是想確定一下。 – HolyBlackCat

回答

3

有2個版本或gcc工具鏈:Cygwin相似msys/gcc和原生mingw-w64-i686-gccmingw-w64-x86_64-gcc

在你的情況下,你將需要安裝mingw-w64-*工具鏈,並根據拱使用MINGW32或MINGW64 shell。

相關問題