给定一个简单的程序:
#include <windows.h>
int WINAPI WinMain(HINSTANCE hInst, HINSTANCE hInstPrev,
LPSTR lpCmdLine, int nCmdShow)
{
return 0;
}
如果我运行g++ a.cpp
它工作正常。
但是,运行g++ -c a.cpp && ar rcs a.a a.o && g++ a.a
会出现以下错误:
c:/mingw32/bin/../lib/gcc/i686-w64-mingw32/4.8.1/../../../../i686-w64-mingw32/lib/../lib/libmingw32.a(lib32_libmingw32_a-crt0_c.o):crt0_c.c:(.text.startup+0x39): undefined reference to `WinMain@16'
collect2.exe: error: ld returned 1 exit status
关于为什么会发生这种情况的任何见解?我怎样才能链接一个只有 .a 文件的程序?