4

我在 Ubuntu 12.10 上进行 3D 绘图时遇到问题。在我尝试以 3D 绘制数据后,崩溃立即发生。我在这里有崩溃转储和其他错误报告:

libGL: OpenDriver: trying /usr/lib/x86_64-linux-gnu/dri/tls/nouveau_dri.so
libGL: OpenDriver: trying /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so
libGL error: dlopen /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so failed (/home/jonne/MATLAB/R2012a/bin/glnxa64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so))
libGL: OpenDriver: trying ${ORIGIN}/dri/tls/nouveau_dri.so
libGL: OpenDriver: trying ${ORIGIN}/dri/nouveau_dri.so
libGL error: dlopen ${ORIGIN}/dri/nouveau_dri.so failed (${ORIGIN}/dri/nouveau_dri.so: cannot open shared object file: No such file or directory)
libGL: OpenDriver: trying /usr/lib/dri/tls/nouveau_dri.so
libGL: OpenDriver: trying /usr/lib/dri/nouveau_dri.so
libGL error: dlopen /usr/lib/dri/nouveau_dri.so failed (/usr/lib/dri/nouveau_dri.so: cannot open shared object file: No such file or directory)
libGL error: unable to load driver: nouveau_dri.so
libGL error: driver pointer missing
libGL error: failed to load driver: nouveau
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 error: dlopen /usr/lib/x86_64-linux-gnu/dri/swrast_dri.so failed (/home/jonne/MATLAB/R2012a/bin/glnxa64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by /usr/lib/x86_64-linux-gnu/libLLVM-3.1.so.1))
libGL: OpenDriver: trying ${ORIGIN}/dri/tls/swrast_dri.so
libGL: OpenDriver: trying ${ORIGIN}/dri/swrast_dri.so
libGL error: dlopen ${ORIGIN}/dri/swrast_dri.so failed (${ORIGIN}/dri/swrast_dri.so: cannot open shared object file: No such file or directory)
libGL: OpenDriver: trying /usr/lib/dri/tls/swrast_dri.so
libGL: OpenDriver: trying /usr/lib/dri/swrast_dri.so
libGL error: dlopen /usr/lib/dri/swrast_dri.so failed (/usr/lib/dri/swrast_dri.so: cannot open shared object file: No such file or directory)
libGL error: unable to load driver: swrast_dri.so
libGL error: failed to load driver: swrast

崩溃转储:

------------------------------------------------------------------------
       Segmentation violation detected at Wed Dec 19 02:17:00 2012
------------------------------------------------------------------------

Configuration:
  Crash Decoding  : Disabled
  Current Visual  : 0x21 (class 4, depth 24)
  Default Encoding: UTF-8
  GNU C Library   : 2.15 stable
  MATLAB Root     : /home/jonne/MATLAB/R2012a
  MATLAB Version  : 7.14.0.739 (R2012a)
  Operating System: Linux 3.5.0-19-generic #30-Ubuntu SMP Tue Nov 13 17:48:01 UTC 2012 x86_64
  Processor ID    : x86 Family 31 Model 6 Stepping 2, AuthenticAMD
  Virtual Machine : Java 1.6.0_17-b04 with Sun Microsystems Inc. Java HotSpot(TM) 64-Bit Server VM mixed mode
  Window System   : The X.Org Foundation (11300000), display :0.0

Fault Count: 1


Abnormal termination:
Segmentation violation

Register State (from fault):
  RAX = 0000000000000000  RBX = 0000000000000000
  RCX = 0000000000000000  RDX = 00007fb9ac068658
  RSP = 00007fb9bb8e38e8  RBP = 00000000009a0005
  RSI = 0000000000000000  RDI = 0000000000000000

   R8 = 00007fb9ac068680   R9 = 0000000000000000
  R10 = 0000000000000000  R11 = 0000000000000000
  R12 = 0000000000001f02  R13 = 0000000000000000
  R14 = 00007fb9c6b797d0  R15 = 0000000000000000

  RIP = 00007fb973df6d00  EFL = 0000000000010206

   CS = 0033   FS = 0000   GS = 0000

Stack Trace (from fault):
[  0] 0x00007fb9d09f592e   /home/jonne/MATLAB/R2012a/bin/glnxa64/libmwfl.so+00370990 _ZN2fl4diag15stacktrace_base7captureERKNS0_14thread_contextEm+000158
[  1] 0x00007fb9d09f87d0   /home/jonne/MATLAB/R2012a/bin/glnxa64/libmwfl.so+00382928
[  2] 0x00007fb9d09f8b3b   /home/jonne/MATLAB/R2012a/bin/glnxa64/libmwfl.so+00383803 _ZN2fl4diag13terminate_logEPKcRKNS0_14thread_contextE+000171
[  3] 0x00007fb9cf8dc203  /home/jonne/MATLAB/R2012a/bin/glnxa64/libmwmcr.so+01253891 _ZN2fl4diag13terminate_logEPKcPK8ucontext+000067
[  4] 0x00007fb9cf8d90fd  /home/jonne/MATLAB/R2012a/bin/glnxa64/libmwmcr.so+01241341
[  5] 0x00007fb9cf8da79d  /home/jonne/MATLAB/R2012a/bin/glnxa64/libmwmcr.so+01247133
[  6] 0x00007fb9cf8da925  /home/jonne/MATLAB/R2012a/bin/glnxa64/libmwmcr.so+01247525
[  7] 0x00007fb9cf8daf01  /home/jonne/MATLAB/R2012a/bin/glnxa64/libmwmcr.so+01249025
[  8] 0x00007fb9cf8db3f5  /home/jonne/MATLAB/R2012a/bin/glnxa64/libmwmcr.so+01250293
[  9] 0x00007fb9cdfa2cb0              /lib/x86_64-linux-gnu/libpthread.so.0+00064688
[ 10] 0x00007fb973df6d00          /usr/lib/x86_64-linux-gnu/libxcb-glx.so.0+00056576 xcb_glx_get_string_string_length+000000
[ 11] 0x00007fb97c98a6b4          /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1+00272052 __glXGetString+000068
[ 12] 0x00007fb97c98812e          /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1+00262446
[ 13] 0x00007fb97cbbf379     /home/jonne/MATLAB/R2012a/bin/glnxa64/glren.so+00078713
[ 14] 0x00007fb97cbb6b40     /home/jonne/MATLAB/R2012a/bin/glnxa64/glren.so+00043840
[ 15] 0x00007fb97cbb6cc6     /home/jonne/MATLAB/R2012a/bin/glnxa64/glren.so+00044230
[ 16] 0x00007fb9c68d30a8   /home/jonne/MATLAB/R2012a/bin/glnxa64/libmwhg.so+09408680 _Z22OpenGLSetupEnumstrOnceb+000296
[ 17] 0x00007fb9c6827ac7   /home/jonne/MATLAB/R2012a/bin/glnxa64/libmwhg.so+08706759 gf_DetermineBestRenderMode+000183
[ 18] 0x00007fb9c6827c0b   /home/jonne/MATLAB/R2012a/bin/glnxa64/libmwhg.so+08707083 _Z22gf_DetermineRenderModeP11GObject_tagi+000107
[ 19] 0x00007fb9c6827d0a   /home/jonne/MATLAB/R2012a/bin/glnxa64/libmwhg.so+08707338 InitializeFigureRenderEngine+000074
[ 20] 0x00007fb9c6828114   /home/jonne/MATLAB/R2012a/bin/glnxa64/libmwhg.so+08708372
[ 21] 0x00007fb9c689418c   /home/jonne/MATLAB/R2012a/bin/glnxa64/libmwhg.so+09150860
[ 22] 0x00007fb9c684a89b   /home/jonne/MATLAB/R2012a/bin/glnxa64/libmwhg.so+08849563 _Z24commitHG1DatabaseUpdatesb+000235
[ 23] 0x00007fb9d0157e16 /home/jonne/MATLAB/R2012a/bin/glnxa64/libmwservices.so+01359382 _Z26svWS_CommitDatabaseUpdates28svCommitDatabaseUpdatesType_+000390
[ 24] 0x00007fb9c5030387  /home/jonne/MATLAB/R2012a/bin/glnxa64/libmwuix.so+00525191
[ 25] 0x00007fb9c5030691  /home/jonne/MATLAB/R2012a/bin/glnxa64/libmwuix.so+00525969
[ 26] 0x00007fb9cfb476eb /home/jonne/MATLAB/R2012a/bin/glnxa64/libmwbridge.so+00124651
[ 27] 0x00007fb9cfb47cde /home/jonne/MATLAB/R2012a/bin/glnxa64/libmwbridge.so+00126174 _Z10ioReadLinebP8_IO_FILEPcS1_iPbRKN5boost8optionalIKP15inWorkSpace_tagEEb+000990
[ 28] 0x00007fb9cfb48165 /home/jonne/MATLAB/R2012a/bin/glnxa64/libmwbridge.so+00127333
[ 29] 0x00007fb9cfb4cd0a /home/jonne/MATLAB/R2012a/bin/glnxa64/libmwbridge.so+00146698
[ 30] 0x00007fb9cfb4d165 /home/jonne/MATLAB/R2012a/bin/glnxa64/libmwbridge.so+00147813
[ 31] 0x00007fb9cfb4d9ce /home/jonne/MATLAB/R2012a/bin/glnxa64/libmwbridge.so+00149966 mnParser+000702
[ 32] 0x00007fb9cf8c0de2  /home/jonne/MATLAB/R2012a/bin/glnxa64/libmwmcr.so+01142242 _ZN11mcrInstance30mnParser_on_interpreter_threadEv+000034
[ 33] 0x00007fb9cf8a351a  /home/jonne/MATLAB/R2012a/bin/glnxa64/libmwmcr.so+01021210
[ 34] 0x00007fb9cf8a3598  /home/jonne/MATLAB/R2012a/bin/glnxa64/libmwmcr.so+01021336
[ 35] 0x00007fb9c5021376  /home/jonne/MATLAB/R2012a/bin/glnxa64/libmwuix.so+00463734
[ 36] 0x00007fb9c502b862  /home/jonne/MATLAB/R2012a/bin/glnxa64/libmwuix.so+00505954
[ 37] 0x00007fb9d01599a1 /home/jonne/MATLAB/R2012a/bin/glnxa64/libmwservices.so+01366433 _ZSt8for_eachIN9__gnu_cxx17__normal_iteratorIPN5boost8weak_ptrIN4sysq10ws_ppeHookEEESt6vectorIS6_SaIS6_EEEENS4_8during_FIS6_NS2_10shared_ptrIS5_EEEEET0_T_SH_SG_+000081
[ 38] 0x00007fb9d015aaab /home/jonne/MATLAB/R2012a/bin/glnxa64/libmwservices.so+01370795
[ 39] 0x00007fb9d01585f9 /home/jonne/MATLAB/R2012a/bin/glnxa64/libmwservices.so+01361401 _Z25svWS_ProcessPendingEventsiib+000665
[ 40] 0x00007fb9cf8a276f  /home/jonne/MATLAB/R2012a/bin/glnxa64/libmwmcr.so+01017711
[ 41] 0x00007fb9cf8a2c3b  /home/jonne/MATLAB/R2012a/bin/glnxa64/libmwmcr.so+01018939
[ 42] 0x00007fb9cf8a2d97  /home/jonne/MATLAB/R2012a/bin/glnxa64/libmwmcr.so+01019287
[ 43] 0x00007fb9cdf9ae9a              /lib/x86_64-linux-gnu/libpthread.so.0+00032410
[ 44] 0x00007fb9cdcc7cbd                    /lib/x86_64-linux-gnu/libc.so.6+00998589 clone+000109

有谁知道我应该怎么做才能完成这项工作?2D 绘图工作,但 3D 不...

谢谢!

4

2 回答 2

4

你用的是什么渲染器?你能发布你的脚本的代码片段吗?

首先尝试创建图形,指定渲染器。例如,

figure('renderer','zbuffer')

我对zbuffer渲染器的运气比例如opengl或更多painters。事实上,在我的启动脚本中,我确保我打开的每个图形窗口都使用 zbuffer - 我发现它的渲染速度更快,并且随机崩溃的问题更少。

见: http: //www.mathworks.com.au/help/matlab/ref/figure_props.html

渲染器画家 | 缓冲区 | OpenGL

用于丝网和印刷的渲染方法。选择用于渲染 MATLAB 图形的方法。选择是:

画家 - 当图窗仅包含简单或小型图形对象时,MATLAB 使用的原始渲染方法更快。

zbuffer — MATLAB 更快、更准确地绘制图形对象,因为它基于每个像素为对象着色,并且 MATLAB 仅渲染场景中可见的那些像素(从而消除了从前到后的排序错误)。请注意,如果 MATLAB 显示复杂场景,此方法会消耗大量系统内存。

OpenGL — OpenGL 是一种可在许多计算机系统上使用的渲染器。此渲染器通常比 Painters 或 zbuffer 更快,并且在某些情况下使 MATLAB 能够访问某些系统上可用的图形硬件。

于 2012-12-19T01:26:21.763 回答
3

这对我有帮助: https ://bbs.archlinux.org/viewtopic.php?id=154775 (...从如何告诉 mex 链接到 /usr/lib 中的 libstdc++.so.6 而不是MATLAB 目录中的一个?

基本上我只是这样做了:

sudo mv /usr/local/MATLAB/R2012a/sys/os/glnx86/libstdc++.so.6 /usr/local/MATLAB/R2012a/sys/os/glnx86/libstdc++.so.6__bck

sudo ln -s /usr/lib/i386-linux-gnu/libstdc++.so.6.0.17 /usr/local/MATLAB/R2012a/sys/os/glnx86/libstdc++.so.6
于 2013-02-13T21:35:28.817 回答