Opengl rhel 7.1倍频程gnuplot-解决libGL错误:未能加载驱动程序:swrast
我最近进行了一次练习,以解决如何使用gnuplot绘制RHEL7.1上的倍频程的问题。基本上,我得到了以下丑陋的信息,没有阴谋:Opengl rhel 7.1倍频程gnuplot-解决libGL错误:未能加载驱动程序:swrast,opengl,gnuplot,octave,rhel,Opengl,Gnuplot,Octave,Rhel,我最近进行了一次练习,以解决如何使用gnuplot绘制RHEL7.1上的倍频程的问题。基本上,我得到了以下丑陋的信息,没有阴谋: $ export LIBGL_DEBUG=verbose $ octave $ GNU Octave, version 3.8.2 octave:1> x = -10:0.1:10; plot(x, sin(x)) libGL: OpenDriver: trying /usr/lib64/dri/tls/swrast_dr
$ export LIBGL_DEBUG=verbose
$ octave
$ GNU Octave, version 3.8.2
octave:1> x = -10:0.1:10; plot(x, sin(x))
libGL: OpenDriver: trying /usr/lib64/dri/tls/swrast_dri.so
libGL: OpenDriver: trying /usr/lib64/dri/swrast_dri.so
libGL: driver does not expose __driDriverGetExtensions_swrast():
/usr/lib64/dri/swrast_dri.so: undefined symbol: __driDriverGetExtensions_swrast
libGL: Can't open configuration file /home/jsaari/.drirc: No such file or directory.
libGL: Can't open configuration file /home/jsaari/.drirc: No such file or directory.
libGL error: failed to load driver: swrast
function is no-op
function is no-op
function is no-op
. . .
在没有找到任何特别有用的帖子后,我终于下了决心 显然,OpenGL/Mesa实现存在问题。另外,octave有多个图形输出可用,默认情况下用于使用gnuplot。这个特定版本的octave将“fltk”又名“OpenGL”作为默认图形输出。通过设置图形库默认值,很容易克服这一问题
octave:1> graphics_toolkit()
ans = fltk
octave:2> available_graphics_toolkits()
ans =
{
[1,1] = fltk
[1,2] = gnuplot
}
octave:3> graphics_toolkit("gnuplot")
octave:4> graphics_toolkit()
ans = gnuplot
octave:5> x = -10:0.1:10; plot(x, sin(x))
这给了我一个很好的情节
如果这为我的生命节省了两个小时,我就再也回不来了,这是值得发布的。你有一个OpenGL坏了的系统。也许你已经安装了专有的Nvidia驱动程序,破坏了这一点?或者您还没有安装mesa DRI?尽管如此,GNUOctave并没有问题,在Octave中使用OpenGL后端之前,您应该使用例如
glxgears
来调试它并运行OpenGL