OpenGl库不行

时间:2014-04-26 16:51:23

标签: c++ linux opengl ubuntu

我的opengl库(过剩)有问题。 我安装这个2:

sudo apt-get install freeglut3 freeglut3-dev
sudo apt-get install binutils-gold

当我写道:

g++ -lGL -lglut test1.cpp -o test

我有这个错误:

/usr/bin/ld: error: cannot open /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../x86_64-linux-        gnu/libGL.so: No such file or directory
/tmp/cc0332Hc.o:test1.cpp:function draw(): error: undefined reference to 'glClearColor'
/tmp/cc0332Hc.o:test1.cpp:function draw(): error: undefined reference to 'glClear'
/tmp/cc0332Hc.o:test1.cpp:function draw(): error: undefined reference to 'glFlush' 
 collect2: ld returned 1 exit status 0

我使用最新版本的Elementary Os和gcc编译器

2 个答案:

答案 0 :(得分:0)

命令行中指定的库链接顺序很重要。在这种情况下,libglut.so依赖于libGL.so,因此命令行应该具有-lglut BEFORE -lGL。像这样:

g++ test1.cpp -lglut -lGL -o test

答案 1 :(得分:0)

GLUT """ OpenGL库。恰恰相反。它只是openGL的一些实用程序库。

您似乎没有安装OpenGL实现,这通常是图形驱动程序或操作系统本身的一部分。在Linux上,有来自NVIDIA和AMD的专有驱动程序,以及在Mesa3D项目中开发的开源驱动程序。哪一个最适合您取决于您​​使用的GPU。