连接中的错误!请大家帮忙!

skyling2001 2004-05-06 09:59:50
刚开始学openGl,打开一个源码连接的时候出错了。
.lib,.h文件我都添了,.dll文件也有,出现了一下错误:

--------------------Configuration: PRIM - Win32 Debug--------------------
Compiling...
PRIM.C
Linking...
PRIM.OBJ : error LNK2001: unresolved external symbol ___glutInitWithExit@12
PRIM.OBJ : error LNK2001: unresolved external symbol ___glutCreateWindowWithExit@8
Debug/PRIM.exe : fatal error LNK1120: 2 unresolved externals
Error executing link.exe.

PRIM.exe - 3 error(s), 0 warning(s)


怎么解决,谢谢!!
...全文
81 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
skyling2001 2004-05-07
  • 打赏
  • 举报
回复
程序里有用到#include <GL/glut.h>,
那么需要添加什么.lib文件。
我已经添加了opengl32.lib glu32.lib glaux.lib glut32.lib,
但还是出现上面的错误!请帮忙!谢谢!
skyling2001 2004-05-07
  • 打赏
  • 举报
回复
glu.dll,glu32.dll,glut.dll,glut32.dll,opengl32.dll在/system32下已经有了。
还是出错,有人遇到吗?
菜牛 2004-05-07
  • 打赏
  • 举报
回复
.lib文件添加了吗?
skyling2001 2004-05-06
  • 打赏
  • 举报
回复
3个dll文件我已经在system32下添加了,重新编译很多次了,还是不行。
会不会是显卡驱动的事情?

你们试试:乱码的部分是注释,不用管他
#include <stdlib.h>
#include <GL/glut.h>
#include <stdio.h>

#ifndef CALLBACK
#define CALLBACK
#endif

GLfloat ctlpoints[4][4][3];

GLUnurbsObj *theNurb;

// ³õʼ»¯¿ØÖƵã
void init_surface(void)
{
int u, v;
for (u = 0; u < 4; u++) {
for (v = 0; v < 4; v++) {
ctlpoints[u][v][0] = 2.0*((GLfloat)u - 1.5);
ctlpoints[u][v][1] = 2.0*((GLfloat)v - 1.5);

if ( (u == 1 || u == 2) && (v == 1 || v == 2))
ctlpoints[u][v][2] = 3.0;
else
ctlpoints[u][v][2] = -3.0;
}
}
}

void CALLBACK nurbsError(GLenum errorCode)
{
const GLubyte *estring;

estring = gluErrorString(errorCode);
fprintf (stderr, "Nurbs Error: %s\n", estring);
exit (0);
}

// ³õʼ»¯²ÄÖÊÌØÐÔºÍÉî¶È»º´æ
void init(void)
{
GLfloat mat_diffuse[] = { 0.7, 0.7, 0.7, 1.0 };
GLfloat mat_specular[] = { 1.0, 1.0, 1.0, 1.0 };
GLfloat mat_shininess[] = { 100.0 };

glClearColor (0.0, 0.0, 0.0, 0.0);
glMaterialfv(GL_FRONT, GL_DIFFUSE, mat_diffuse);
glMaterialfv(GL_FRONT, GL_SPECULAR, mat_specular);
glMaterialfv(GL_FRONT, GL_SHININESS, mat_shininess);

glEnable(GL_LIGHTING);
glEnable(GL_LIGHT0);
glEnable(GL_DEPTH_TEST);
glEnable(GL_AUTO_NORMAL);
glEnable(GL_NORMALIZE);

init_surface();

theNurb = gluNewNurbsRenderer();
gluNurbsProperty(theNurb, GLU_SAMPLING_TOLERANCE, 25.0);
gluNurbsProperty(theNurb, GLU_DISPLAY_MODE, GLU_FILL);
gluNurbsCallback(theNurb, GLU_ERROR,
nurbsError);
}

void display(void)
{
GLfloat knots[8] = {0.0, 0.0, 0.0, 0.0, 1.0, 1.0, 1.0, 1.0};
GLfloat edgePt[5][2] = // ˳ʱÕë
{{0.0, 0.0}, {1.0, 0.0}, {1.0, 1.0}, {0.0, 1.0}, {0.0, 0.0}};
GLfloat curvePt[4][2] = // ˳ʱÕë
{{0.25, 0.5}, {0.25, 0.75}, {0.75, 0.75}, {0.75, 0.5}};
GLfloat curveKnots[8] =
{0.0, 0.0, 0.0, 0.0, 1.0, 1.0, 1.0, 1.0};
GLfloat pwlPt[4][2] = // ˳ʱÕë
{{0.75, 0.5}, {0.5, 0.25}, {0.25, 0.5}};

glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glPushMatrix();
glRotatef(330.0, 1.,0.,0.);
glScalef (0.5, 0.5, 0.5);
// ¶¨ÒåNURBSÇúÃæ
gluBeginSurface(theNurb);
gluNurbsSurface(theNurb, 8, knots, 8, knots,
4 * 3, 3, &ctlpoints[0][0][0],
4, 4, GL_MAP2_VERTEX_3);
// ¶¨ÒåÐÞÕûÇúÃæ
gluBeginTrim (theNurb);
gluPwlCurve (theNurb, 5, &edgePt[0][0], 2, GLU_MAP1_TRIM_2);
gluEndTrim (theNurb);
// ¶¨ÒåÐÞÕûÇúÃæ
gluBeginTrim (theNurb);
gluNurbsCurve (theNurb, 8, curveKnots, 2,
&curvePt[0][0], 4, GLU_MAP1_TRIM_2);
gluPwlCurve (theNurb, 3, &pwlPt[0][0], 2, GLU_MAP1_TRIM_2);
gluEndTrim (theNurb);
gluEndSurface(theNurb);

glPopMatrix();
glFlush();
}

void reshape(int w, int h)
{
glViewport(0, 0, (GLsizei) w, (GLsizei) h);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluPerspective (45.0, (GLdouble)w/(GLdouble)h, 3.0, 8.0);

glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
glTranslatef (0.0, 0.0, -5.0);
}

void keyboard(unsigned char key, int x, int y)
{
switch (key) {
case 27:
exit(0);
break;
}
}


int main(int argc, char** argv)
{
glutInit(&argc, argv);
glutInitDisplayMode (GLUT_SINGLE | GLUT_RGB | GLUT_DEPTH);
glutInitWindowSize (500, 500);
glutInitWindowPosition (100, 100);
glutCreateWindow(argv[0]);
init();
glutReshapeFunc(reshape);
glutDisplayFunc(display);
glutKeyboardFunc (keyboard);
glutMainLoop();
return 0;
}
zxf8u8 2004-05-06
  • 打赏
  • 举报
回复
重新编译试试
zxf8u8 2004-05-06
  • 打赏
  • 举报
回复
dll

19,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧