代码:: blocks的OpenGL设置“找不到-lXxf86vm”

时间:2012-08-29 21:04:43

标签: opengl glut codeblocks freeglut

我正在为学校建立一个开发环境。我们将使用GLUT进行图形编程。我使用

在Ubuntu上安装了freeglut
sudo apt-get install freeglut3-dev

我将使用code :: blocks来编写所有内容(根据教师的规范)但是当我尝试在code :: blocks中构建默认的GLUT项目时,我得到以下内容

Compiling: main.cpp 
Linking console executable: bin/Debug/glut_test
/usr/bin/ld: cannot find -lXxf86vm
collect2: ld returned 1 exit status

在我看来,我错过了一些依赖,但我不能为我的生活找出它是什么。我不知道 -lXxf86vm 是什么,谷歌或我能找到的任何其他论坛也不知道。

有没有人有想法?

更新1)这可能与我在这台笔记本电脑上安装了Nvidia Optimus卡这一事实有关。

我也试过运行默认的OpenGL项目,它抛出了以下错误

main: X server has no OpenGL GLX extension

我要尝试安装大黄蜂,看看是否能让我随处可见

2 个答案:

答案 0 :(得分:4)

  

我不知道-lXxf86vm是什么,也不知道谷歌或我能找到的任何其他论坛。

此库为XF86VidModeSwitch扩展提供API。 XF86VidMode已被XRandR取代,但freeglut可能需要它来支持游戏模式。

只需安装软件包“libxxf86vm-dev”,

即可
  

更新1)这可能与我在这台笔记本电脑上安装了Nvidia Optimus卡这一事实有关。

不,这不是这个特定库缺失的原因

  

我也试过运行默认的OpenGL项目,它抛出了以下错误

嗯,您还没有正确安装NVidia-Drivers。

答案 1 :(得分:4)

CodeBlocks总是将“Xxf86vm”添加到新的GLUT项目中。 我不知道它是什么,或CodeBlocks为什么添加它,(非常讨厌的bug?)但你几乎肯定不需要它!

您可以在以下位置找到它:项目 - >构建选项...... - >链接器设置。
在左窗格中选择项目名称,它应显示在“链接库”下 现在,只需从列表中删除它。你的代码应该编译并在没有它的情况下正常运行。