声明:我发现有一些关于同样问题的建议,但是那个(类似)帖子已经被移至SuperUsers并被删除。然而,我仍然想在这里发布我的问题,因为我认为它与软件/编程有关,不应该在SuperUsers上发布(有时候软件和硬件问题之间的界限并不明显)。
我在VirtualBox上使用Ubuntu 11.10 SSD运行Code::Blocks中非常简单的OpenGL程序。每当我构建并运行程序时,我都会收到以下错误:
- OpenGL警告:XGetVisualInfo对0x232dbe0返回0个可视化信息
- OpenGL警告:使用0x802重试未返回任何可视化信息
- 分段错误
根据我目前自己了解的情况,这与VirtualBox有关。我需要设置
- LIBGL_ALWAYS_INDIRECT=1
换句话说,通过X.org启用间接渲染,而不是直接与硬件通信。这个问题可能与我拥有ATI卡无关,因为我有一台带有ATI卡的笔记本电脑可以完美运行相同程序。
然而,我不敢说我的GPU是ATI并不起作用。我也不确定驱动程序是否已正确安装(在系统信息->图形->图形驱动程序下显示为Chromium)。
任何有关如何设置LIBGL_ALWAYS_INDIRECT=1的帮助都将不胜感激。我仅仅缺乏把这个命令放在哪里或在终端中如何执行它的知识。
来源:
编辑:在终端中输入:
export LIBGL_ALWAYS_INDIRECT = 1
验证直接渲染是否关闭:
glxinfo | grep direct
然而,问题仍然存在。我仍然收到有关OpenGL警告和分段错误的提醒。