Mat*_*lis 4 opengl virtualbox segmentation-fault ubuntu-11.10
免责声明:我看到针对完全相同的问题提出了一些建议,但是(类似的)帖子被迁移到SuperUsers并且似乎已被删除.然而,我仍然想在这里发布我的问题,因为我认为软件/编程足够相关而不是在SuperUsers上发布(有时候软件和硬件问题之间的界限很模糊).
我在VirtualBox中的Code :: Blocks中运行一个非常简单的OpenGL程序,并在SSD上安装了Ubuntu 11.10.每当我构建和运行程序时,我都会遇到以下错误:
从我到目前为止收集的内容来看,这与VirtualBox有关.我需要设置
换句话说,通过X.org启用间接呈现,而不是直接与硬件通信.这个问题可能与我有ATI卡的事实无关,因为我有一台带有ATI卡的笔记本电脑,可以完美地运行同一个程序.
尽管如此,我不敢说我的GPU是ATI这一事实根本不起任何作用.我也不确定驱动程序是否正确安装(在系统信息 - >图形 - >图形驱动程序:Chromium下.)
如何设置LIBGL_ALWAYS_INDIRECT = 1的任何帮助将不胜感激.我根本不知道在哪里放置此命令或在终端中执行它的位置/方式.
资料来源:
编辑:在终端类型:
export LIBGL_ALWAYS_INDIRECT = 1
Run Code Online (Sandbox Code Playgroud)
要确认直接渲染已关闭:
glxinfo | grep direct
Run Code Online (Sandbox Code Playgroud)
但问题仍然存在.我仍然提到OpenGL警告和分段错误.
小智 9
我在VirtualBox中的Ubuntu 12.04上运行Bullet Physics OpenGL演示遇到了同样的问题.我没有使用间接渲染,而是通过修改源代码中的过剩窗口创建代码来解决问题,如下所述:https://groups.google.com/forum/?fromgroups =#!topic/comp.graphics. api.opengl/Oecgo2Fc9Zc.
这需要更换原件
...
glutCreateWindow(title);
...
Run Code Online (Sandbox Code Playgroud)
同
...
if (!glutGet(GLUT_DISPLAY_MODE_POSSIBLE))
{
exit(1);
}
glutCreateWindow(title);
...
Run Code Online (Sandbox Code Playgroud)
如链接中所述.我不清楚为什么这应该纠正段错误问题; 显然,glutGet除了检索状态值之外还有一些副作用.这可能是freeglut实现过剩的一个怪癖.
| 归档时间: |
|
| 查看次数: |
4193 次 |
| 最近记录: |