2014-11-08 134 views
1

我尝试按照本教程 - >http://kiwwito.com/installing-opengl-glut-libraries-in-ubuntu/安装OpenGL库,但是当我尝试运行程序时,出现此错误消息。在Ubuntu中安装OpenGL/Glut库

test2.c:(.text+0x1d): undefined reference to `glClearColor' 
test2.c:(.text+0x27): undefined reference to `glClear' 
test2.c:(.text+0x2c): undefined reference to `glFlush' 
/tmp/ccNGbmFL.o: In function `main': 
test2.c:(.text+0x50): undefined reference to `glutInit' 
test2.c:(.text+0x5a): undefined reference to `glutInitDisplayMode' 
test2.c:(.text+0x69): undefined reference to `glutInitWindowPosition' 
test2.c:(.text+0x78): undefined reference to `glutInitWindowSize' 
test2.c:(.text+0x82): undefined reference to `glutCreateWindow' 
test2.c:(.text+0x8c): undefined reference to `glutDisplayFunc' 
test2.c:(.text+0x91): undefined reference to `glutMainLoop' 

当我删除这些功能,只留下#include <GL/glut.h>程序工作正常。我也试过这个http://www.opengl-tutorial.org/beginners-tutorials/tutorial-1-opening-a-window/#Building_on_Linux安装指南,但它不起作用。另外我也尝试安装eclipse并在C++链接器中添加这些库。 Eclipse控制台输出为:

16:02:45 **** Incremental Build of configuration Debug for project opengl_glut **** 
make all 
Building file: ../main.cpp 
Invoking: Cross G++ Compiler 
g++ -O0 -g3 -Wall -c -fmessage-length=0 -MMD -MP -MF"main.d" -MT"main.d" -o "main.o" "../main.cpp" 
Finished building: ../main.cpp 

Building target: opengl_glut 
Invoking: Cross G++ Linker 
g++ -o "opengl_glut" ./main.o -lglut -lGL -lm -lXrandr -lXi -lX11 -lXxf86vm -lpthread -lglfw3 -lGLU 
/usr/bin/ld: cannot find -lglfw3 
makefile:44: recipe for target 'opengl_glut' failed 
collect2: error: ld returned 1 exit status 
make: *** [opengl_glut] Error 1 

如何解决这些错误?

回答

0

对于第一个问题,通过添加-lglut链接到过剩。你必须链接到你使用的库。它不足以包含标题。

对于第二个问题,从库中删除glfw3。不知道为什么那里。你用的不是glfw。如果教程也使用glfw,那么另一个选项是安装它,或者找到一个没有的教程。

+0

对不起,在手机上。 – 2014-11-08 14:38:19