尝试使用SDL,glew和glm在Windows 7上的visual studio 2013中设置OpenGL环境。是的,我已正确链接和排序所有标头和dll,我有.exe的SDL2.dll和glew32.dll。我的链接器输入包括opengl32.lib。运行时库设置为“多线程DLL”。
/*main.cpp*/
#include <SDL.h>
#include <glew.h>
#include <iostream>
int main(int argc, char* argv[])
{
return 0;
}
错误是
错误1错误LNK2019:函数___tmainCRTStartup中引用了未解析的外部符号_main C:\ Users \ user \ Documents \ Visual Studio 2013 \ Projects \ OpenGLProject \ OpenGLProject \ MSVCRT.lib(crtexe.obj)OpenGLProject
我注意到如果我在SDL_main.h中注释掉#define main SDL_main
,我就可以编译,这可能与问题有关;虽然我觉得我在这里咆哮着错误的树。
答案 0 :(得分:1)
如果我没记错的话(自从我上次在Windows上使用SDL以来已经有一段时间了),您还必须添加一个名为SDLmain
(或类似)的库。这个库定义了main
函数,它进行了一些预初始化,然后调用SDL_main
,这恰好是你的&#34; main&#34;功能
答案 1 :(得分:0)
我遇到了同样的问题,正如楼上说的那样,将SDL2main.lib添加到项目解决问题,请务必添加SDL2.LIB&amp;&amp; SDL2main.lib同时