Linux目标为OpenFL的libGL错误

时间:2014-05-15 04:31:31

标签: linux opengl haxe openfl

我计划利用其C ++目标与Haxe进行游戏开发,为此我选择了使用OpenFL作为其后端的HaxeFlixel框架。 "你好世界"尽管我还没有计划使用其中任何一个,因为HTML5似乎可以正常运行(减去声音),因为我希望创建的游戏将是一个本机运行的桌面游戏。

然而,当我尝试运行目标设置为native linux的HaxeFlixel hello world示例时,测试程序在启动时崩溃并给了我以下错误:

libGL: screen 0 does not appear to be DRI2 capable
libGL: OpenDriver: trying /usr/lib/x86_64-linux-gnu/dri/tls/swrast_dri.so
libGL: OpenDriver: trying /usr/lib/x86_64-linux-gnu/dri/swrast_dri.so
libGL: Can't open configuration file /home/zauber/.drirc: No such file or directory.
libGL error: failed to load driver: swrast
X Error of failed request:  GLXUnsupportedPrivateRequest
  Major opcode of failed request:  153 (GLX)
  Minor opcode of failed request:  16 (X_GLXVendorPrivate)
  Serial number of failed request:  211
  Current serial number in output stream:  213

我对如何解决问题感到茫然。我从来没有见过这样的东西,而且我运行的所有其他3D软件和游戏都运行得很好。我在HaxeFlixel论坛上问过,但只被告知它可能是OpenFL中的一个错误。这似乎是这种情况,因为我对使用OpenFL的另一个游戏框架Awe6有同样的问题。

我已经针对类似的问题进行了谷歌搜索,但几乎没有任何结果。我已经拥有了我应该拥有的所有相关库(mesa,nVidia驱动程序,dri2,32位库),我发现的所有解决方案都非常指向安装我已安装的特定库。

到目前为止,我已经在OpenFL论坛和IRC频道上提出过要求,在这两种情况下我完全被忽略了。我确实需要解决这个问题,因为除非我这样做,否则我无法继续我的gamedev项目。

作为参考,我的系统运行64位Linux Mint 16,Linux内核3.11.0-12和nVidia驱动程序319.32

1 个答案:

答案 0 :(得分:1)

  

作为参考,我的系统运行64位Linux Mint 16,Linux内核3.11.0-12和nVidia驱动程序319.32

然后系统配置中的某些内容完全混乱:由于某种原因,您的程序加载了由Mesa驱动程序而不是NVidia驱动程序libGL.so提供的libGL.so。告诉标志是,加载的libGL抱怨DRI2不可用。 NVidia的专有驱动程序不使用或支持DRI2。 DRI2是Mesa的低级状态跟踪器API。

确保您的系统配置正确。最重要的是要确保您使用的库,框架等都没有做出愚蠢的事情,例如捆绑libGL.so