错误LNK2019:函数_main中引用了未解析的外部符号_glutMainLoop @ 0

时间:2011-11-09 06:00:50

标签: c++ opengl linker box2d glut

我正在使用Visual Studio c ++ 2010.我的程序工作正常,直到我在box2d中链接,现在出现了这个错误。

错误LNK2019:函数_main中引用了未解析的外部符号_glutMainLoop @ 0

我甚至没有包括box2d,只是链接

所以我在glut32.lib文件中链接然后我得到一个错误,说glut32.dll文件不存在但我可以清楚地看到它确实存在于我的system32文件夹中。

我错过了什么吗?这让我疯了。

如果我删除了box2d的链接,过剩和gl将再次开始工作。

这是代码 - 没什么特别的。

#include <GL/glut.h>
#include "Sprite.h"
#include "RLBitmap.h"

#define windowWidth 800
#define windowHeight 600

void display(){
    glClear(GL_COLOR_BUFFER_BIT);
    glFlush();
}

void init(){
}

int main(int argc,char** argv){
    glutInit(&argc,argv);
    glutInitDisplayMode(GLUT_SINGLE | GLUT_RGBA);
    glutInitWindowSize(windowWidth, windowHeight);
    glutCreateWindow("Bitmap Demo");
    glClearColor(0.0, 0.0, 0.0, 0.0);
    gluOrtho2D(0, windowWidth, 0, windowHeight);
    init();
    glutDisplayFunc(display);
    glutMainLoop();
    return 0;
}

1 个答案:

答案 0 :(得分:0)

解决此问题的最简单方法是将DLL文件放在与可执行文件相同的目录中。这可以确保加载的版本正是您想要的版本

您描述的情况,系统32中存在但未找到的DLL文件,很可能是因为您的应用程序是32位,所以在32位system32文件夹中查找名为SysWOW64的文件。