Tri*_*tus 2 c++ linker cygwin netbeans sdl-2
任何帮助在这里将不胜感激.我真的绞尽脑汁,sooo.
我已经安装了cygwin和Netbeans,并且已经成功开发,编译和运行一个小的SDL-1.2 Windows游戏,没有任何问题.
现在问题出现了,我已经安装了SDL2并且正在尝试编译.特别是链接.
我和以前一样,将"libSDL2.a"和"libSDL2main.a"添加到我在Netbeans中的项目的链接器选项中; 但我得到"未定义的引用'WinMain'"错误
现在,我调查了这一点,似乎链接器无法将我的main()函数链接到WinMain函数.
另外我看到的一个答案是将"-lmingw32 -lSDLmain -lSDL"添加到链接器选项但我不使用mingw,即时通讯使用cygwin,是什么类似于mingw32.lib的cygwin
我想主要的问题是:如果我使用Cygwin,SDL2和Netbeans,我给链接器的选项是什么?
任何帮助将不胜感激.
你有没有测试过#undef main你的主要面前?
/*
* If 'main' is defined we clear that definition
* to get our default 'main' function back.
*/
#ifdef main
# undef main
#endif /* main */
int main(int argc, char** argv)
{
// ...
return 0;
}
Run Code Online (Sandbox Code Playgroud)
使用带有Cygwin和SDL的Netbeans,包括SDL.h会产生奇怪的错误
也可能有所帮助:
我得到"未定义的引用'WinMain @ 16'"
在Visual C++下,您需要链接SDL2main.lib.在包含Dev-C++ 的gcc构建环境下,您需要链接"sdl-config --libs"的输出,通常是:-lmingw32 -lSDL2main -lSDL2 -mwindows
(http://wiki.libsdl.org/FAQWindows#I_get_.22Undefined_reference_to_.27WinMain.4016.27.22)