我正在尝试编译我的Win32应用程序,但是收到以下错误:
c:/mingw/bin/../lib/gcc/mingw32/4.5.2/../../../libmingw32.a(main.o):main.c:(.tex
t+0xd2): undefined reference to `WinMain@16'
collect2: ld returned 1 exit status
这是编译器命令的样子:
g++ -Wl,--subsystem,windows foo.cpp
这很奇怪,因为我确信之前曾经工作过。 (当时,我使用的是Windows XP。)
注意:我在使用mingw32的Windows 7,64位。
答案 0 :(得分:3)
你有:
int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance, LPWSTR lpCmdLine,int nCmdShow)
应该是:
int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance, LPSTR lpCmdLine,int nCmdShow)
所以sig没有匹配,链接器也找不到它。
答案 1 :(得分:1)
要解决此问题,我建议:
g++ -c
)nm
或objdump
)