OpenGL 和 VS2010 未解析的外部

OpenGL and VS2010 unresolved external

提问人:L3M0L 提问时间:3/16/2013 最后编辑:genpfaultL3M0L 更新时间:3/16/2013 访问量:188

问:

我想使用 GLUT 来简化我的代码和工作。

我使用的是 Windows 7(64 位)和 Visual Studio 2010。我做了本教程中的所有操作,但仍然无法编译我的代码......我收到以下错误:

Error 2 error LNK1120: 1 unresolved externals <path>
Error   1   error LNK2019: unresolved external symbol _WinMain@16 referenced in function ___tmainCRTStartuL  

我使用的代码:

#include <GL/glew.h> 
#include <GL/glut.h> 

void display (void) {  
   glClearColor(1.0f, 0.0f, 0.0f, 1.0f);  
   glClear(GL_COLOR_BUFFER_BIT); 
   glLoadIdentity(); 

   glFlush(); 
}  

int main (int argc, char **argv) {  
   glutInit(&argc, argv); 
   glutInitDisplayMode (GLUT_SINGLE); 
   glutInitWindowSize (500, 500); 
   glutInitWindowPosition (100, 100); 
   glutCreateWindow ("Your first OpenGL Window");  

   glutDisplayFunc(display); /

   glutMainLoop(); 
} 

有人知道问题是什么以及如何解决吗?

visual-studio-2010 opengl windows-7 过剩 未解决-外部

评论


答:

1赞 Shmil The Cat 3/16/2013 #1

似乎您创建的 Windows 应用程序而不是控制台应用程序。 有关如何更改/选择 Windows 子系统,请参阅下图。

enter image description here

评论

0赞 L3M0L 3/16/2013
谢谢伙计!这很有帮助!爱你 :)) 但是,现在当我运行程序时,窗口显示为后台控制台窗口......我可以以某种方式编辑它以使控制台不会出现吗?
0赞 Shmil The Cat 3/16/2013
尝试将其插入 main() 前导码 HWND hWnd = ::GetConsoleWindow();::ShowWindow( hWnd, SW_HIDE );
0赞 datenwolf 3/16/2013
@ShmilTheCat:虽然这可行,但这不是最好的解决方案。我在 stackoverflow.com/a/6882500/524368 上描述过一个更好的解决方案
0赞 datenwolf 3/16/2013
@L3M0L:摆脱控制台窗口的另一种方法:stackoverflow.com/a/6882500/524368