【问题标题】:OpenGL and VS2010 unresolved externalOpenGL和VS2010未解决的外部
【发布时间】:2013-03-15 19:19:32
【问题描述】:

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

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

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 glut unresolved-external


    【解决方案1】:

    似乎您创建的 Windows 应用程序而不是 Console 应用程序。 请参阅下图了解如何更改/选择 Windows 子系统

    【讨论】:

    • 谢谢你!这有帮助!爱你:)) 但是现在当我运行程序时,窗口会在后台显示控制台窗口......我可以以某种方式编辑它以使控制台不会出现吗?
    • 尝试将其插入您的 main() 序言 HWND hWnd = ::GetConsoleWindow(); ::ShowWindow(hWnd, SW_HIDE);
    • @ShmilTheCat:虽然这可行,但它不是最好的解决方案。我在stackoverflow.com/a/6882500/524368 描述了一个更好的解决方案
    • @L3M0L:摆脱控制台窗口的另一种方法:stackoverflow.com/a/6882500/524368
    猜你喜欢
    • 2012-06-03
    • 1970-01-01
    • 1970-01-01
    • 2015-01-11
    • 1970-01-01
    • 2017-07-09
    相关资源
    最近更新 更多