PDA

View Full Version : include questions????



marshallcp
03-28-2006, 08:17 AM
I have read the same topic before,but the problem still existed.I the Visual C++ 6.0,In windows XP I have copied glut32.dll in the folder system32.

1.add glut.h to the folder INCLUDE\GL
2.add glut32.dll ,opengl32.dll to the folder Windows/systems32
3.add glut32.lib ,glut.lib , opengl.lib ,opengl32.lib ,glu.lib to the folder LIB
4.go to the project settings and add glut32.lib glut32.lib ,glut.lib , opengl.lib ,opengl32.lib ,glu.lib
5.#include<glut.h> in my cpp file

the codes from the redbook :

#include <windows.h>

#include <GL/glut.h>

void display(void)
{
/* clear all pixels */
glClear (GL_COLOR_BUFFER_BIT);

/* draw white polygon (rectangle) with corners at
* (0.25, 0.25, 0.0) and (0.75, 0.75, 0.0)
*/
glColor3f (1.0, 1.0, 1.0);
glBegin(GL_POLYGON);
glVertex3f (0.25, 0.25, 0.0);
glVertex3f (0.75, 0.25, 0.0);
glVertex3f (0.75, 0.75, 0.0);
glVertex3f (0.25, 0.75, 0.0);
glEnd();

/* don't wait!
* start processing buffered OpenGL routines
*/
glFlush ();
}

void init (void)
{
/* select clearing color */
glClearColor (0.0, 0.0, 0.0, 0.0);

/* initialize viewing values */
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(0.0, 1.0, 0.0, 1.0, -1.0, 1.0);
}


/*
* Declare initial window size, position, and display mode
* (single buffer and RGBA). Open window with "hello"
* in its title bar. Call initialization routines.
* Register callback function to display graphics.
* Enter main loop and process events.
*/
int main(int argc, char** argv)
{
glutInit(&argc, argv);
glutInitDisplayMode (GLUT_SINGLE | GLUT_RGB);
glutInitWindowSize (250, 250);
glutInitWindowPosition (100, 100);
glutCreateWindow ("hello");
init ();
glutDisplayFunc(display);
glutMainLoop();
return 0; /* ANSI C requires main to return int. */
}

error´╝Ü--------------------Configuration: myhello - Win32 Debug--------------------
Compiling...
hello.c
Linking...
hello.obj : error LNK2001: unresolved external symbol ___glutInitWithExit@12
hello.obj : error LNK2001: unresolved external symbol ___glutCreateWindowWithExit@8
LIBCD.lib(wincrt0.obj) : error LNK2001: unresolved external symbol _WinMain@16
Debug/myhello.exe : fatal error LNK1120: 3 unresolved externals
Error executing link.exe.

myhello.exe - 4 error(s), 0 warning(s)


I don't konw how to solve the problem .

Ehsan Kamrani
03-28-2006, 08:43 AM
You don't need to add the following files:
glut.lib opengl.lib glu.lib
Do not add opengl32.dll to the folder system32.
As you use from glut, create a win32 consol application. Don't inlclude windows.h . However you need to include stdio.h and stdlib.h :
#include <stdio.h>
#include <stdlib.h>
#include <GL\glut.h>
#include <GL\gl.h>
#include <GL\glu.h>
...

Tin Whisker
03-28-2006, 08:56 AM
A quick search produced another nugget WRT the unresolved external symbol:
http://www.opengl.org/cgi-bin/ubb/ultimatebb.cgi?ubb=get_topic;f=2;t=017321#000001

marshallcp
04-02-2006, 06:45 AM
thank you ,

Joe the Programmer
04-02-2006, 06:30 PM
Also, please use code tages. It makes reading code much easier.