« Отговор #2 -: May 28, 2004, 20:06 »
Пак не става! По-точно програмата, която се опитвам да компилирам е следната:
/*
* quad.cc
*/
#include <GL/gl.h>
#include <GL/glu.h>
#include <GL/glut.h>
#include <stdlib.h>
void quad()
{
glBegin(GL_QUADS);
glVertex2f( 0.0f, 1.0f); // Top Left
glVertex2f( 1.0f, 1.0f); // Top Right
glVertex2f( 1.0f, 0.0f); // Bottom Right
glVertex2f( 0.0f, 0.0f); // Bottom Left
glEnd();
}
void draw()
{
glClearColor( 0, 0, 0, 0 );
glClear ( GL_COLOR_BUFFER_BIT );
glPushMatrix();
glColor3f( 0, 0, 1 );
glTranslatef(-0.5, -0.5, 0.0);
quad();
glPopMatrix();
glutSwapBuffers();
}
void keyboard(unsigned char key,int x,int y)
{
if(key==27) exit(0);
}
int main(int argc, char **argv)
{
glutInitDisplayMode( GLUT_RGB | GLUT_DOUBLE);
glutInitWindowSize( 500,500 );
glutCreateWindow("Test");
glutDisplayFunc(draw);
glutKeyboardFunc(keyboard);
glutMainLoop();
}
Като използвам следния make файл:
INCPATH = -I /usr/X11R6/include/
LIBS = -lglut -lGLU -lGL -lXi -lXmu -lX11 -lm -lpthread
LIBPATH = -L/usr/lib -L/usr/X11R6/lib/
%:%.c
gcc $(INCPATH) $(LIBPATH) $^ $(LIBS) -o $@
%:%.cpp
g++ $(INCPATH) $(LIBPATH) $^ $(LIBS) -o $@
%:%.cc
g++ $(INCPATH) $(LIBPATH) $^ $(LIBS) -o $@
След като напиша в конзолата "make quad" ми изписва, че
функциите използвани в програмата не са дефинирани. Аз ли нещо бъркам?