我正在使用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;
}
答案 0 :(得分:0)
解决此问题的最简单方法是将DLL文件放在与可执行文件相同的目录中。这可以确保加载的版本正是您想要的版本
您描述的情况,系统32中存在但未找到的DLL文件,很可能是因为您的应用程序是32位,所以在32位system32文件夹中查找名为SysWOW64的文件。