C++ 在Ubuntu 13.10上安装OpenGL
我是一名大学生,试图用Ubuntu 13.10为OpenGL开发设置我的家庭桌面。我已经安装了所有的库。我们的第一个作业是编写一个简单的程序和一个通用的生成文件,这将在本学期剩下的时间里使用。这在校园的计算机实验室里运行得非常好 我的主.c文件:C++ 在Ubuntu 13.10上安装OpenGL,c++,opengl,ubuntu,makefile,C++,Opengl,Ubuntu,Makefile,我是一名大学生,试图用Ubuntu 13.10为OpenGL开发设置我的家庭桌面。我已经安装了所有的库。我们的第一个作业是编写一个简单的程序和一个通用的生成文件,这将在本学期剩下的时间里使用。这在校园的计算机实验室里运行得非常好 我的主.c文件: # include <GL/glut.h> void display(); int main (int argc, char ** argv) { glutInit(&argc , argv); glutInitDisp
# include <GL/glut.h>
void display();
int main (int argc, char ** argv)
{
glutInit(&argc , argv);
glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH );
glutInitWindowSize(640 , 480) ;
glutCreateWindow("Practical 1");
glutDisplayFunc(display);
glutMainLoop();
return 0;
}
void display()
{
glClearColor(0.0 , 0.0 , 1.0 , 1.0);
glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT);
glFlush();
glutSwapBuffers();
}
我想我可能缺少一些库或其他东西。如中所述,您需要在链接器命令中引用依赖库的对象之后指定中的依赖库:
g++ main.o -lGL -lglut -lGLEW -lGLU -lX11 -lXi -lm -lrt -lpng -o main
我不是makefile语法方面的专家,但我认为这样更改makefile的“all”部分可能会奏效:
all: ${OBJECTS}
${CC} ${LDFLAGS} $^ ${LDLIBS} -o ${TARGET}
成功了,谢谢你。我不认为这会成为问题,因为这个确切的makefile在计算机实验室工作。很高兴知道它工作了!行为上的差异可能是由于不同的编译器版本或环境变量。。。
g++ main.o -lGL -lglut -lGLEW -lGLU -lX11 -lXi -lm -lrt -lpng -o main
all: ${OBJECTS}
${CC} ${LDFLAGS} $^ ${LDLIBS} -o ${TARGET}