Czy Matlab nie działa na Ubuntu 16.04?

18

MATLAB Crash Dump:

    ------------------------------------------------------------------------
       Segmentation violation detected at Thu Mar  3 01:40:49 2016
------------------------------------------------------------------------

Configuration:
  Crash Decoding      : Disabled
  Crash Mode          : continue (default)
  Current Graphics Driver: Unknown hardware 
  Current Visual      : 0x20 (class 4, depth 24)
  Default Encoding    : UTF-8
  GNU C Library       : 2.21 stable
  Host Name           : ShapeShifter
  MATLAB Architecture : glnxa64
  MATLAB Root         : /usr/local/MATLAB/R2015b
  MATLAB Version      : 8.6.0.267246 (R2015b)
  OpenGL              : hardware
  Operating System    : Linux 4.5.0-040500rc6-generic #201602281230 SMP Sun Feb 28 17:33:02 UTC 2016 x86_64
  Processor ID        : x86 Family 6 Model 78 Stepping 3, GenuineIntel
  Virtual Machine     : Java 1.7.0_60-b19 with Oracle Corporation Java HotSpot(TM) 64-Bit Server VM mixed mode
  Window System       : The X.Org Foundation (11703000), display :0

Fault Count: 1


Abnormal termination:
Segmentation violation

Register State (from fault):
  RAX = 0000000000000000  RBX = 00007f785858f0b8
  RCX = 0000000000000000  RDX = 0000000000000006
  RSP = 00007f78ee99fcb0  RBP = 00007f78ee99fdd0
  RSI = 00007f7860cfd7a0  RDI = 00007f78585658a8

   R8 = 0000000000000030   R9 = 0000000000000000
  R10 = 00007f7858562000  R11 = 00007f78585942d8
  R12 = 00007f78588e5ef0  R13 = 0000000000000006
  R14 = 00007f7858566280  R15 = 00007f788836aa80

  RIP = 00007f790b1de8ca  EFL = 0000000000010206

   CS = 0033   FS = 0000   GS = 0000

Stack Trace (from fault):
[  0] 0x00007f790b1de8ca                        /lib64/ld-linux-x86-64.so.2+00051402
[  1] 0x00007f790b1e74e1                        /lib64/ld-linux-x86-64.so.2+00087265
[  2] 0x00007f790b1e2474                        /lib64/ld-linux-x86-64.so.2+00066676
[  3] 0x00007f790b1e69d3                        /lib64/ld-linux-x86-64.so.2+00084435
[  4] 0x00007f79095c6f09                   /lib/x86_64-linux-gnu/libdl.so.2+00003849
[  5] 0x00007f790b1e2474                        /lib64/ld-linux-x86-64.so.2+00066676
[  6] 0x00007f79095c756d                   /lib/x86_64-linux-gnu/libdl.so.2+00005485
[  7] 0x00007f79095c6fa1                   /lib/x86_64-linux-gnu/libdl.so.2+00004001 dlopen+00000049
[  8] 0x00007f79059ed00a      /usr/local/MATLAB/R2015b/bin/glnxa64/libut.so+00311306
[  9] 0x00007f79008497e5 /usr/local/MATLAB/R2015b/bin/glnxa64/libmwm_dispatcher.so+00456677
[ 10] 0x00007f790083c1af /usr/local/MATLAB/R2015b/bin/glnxa64/libmwm_dispatcher.so+00401839 _ZN13Mlm_MATLAB_fn8try_loadEv+00000031
[ 11] 0x00007f7900833ae5 /usr/local/MATLAB/R2015b/bin/glnxa64/libmwm_dispatcher.so+00367333 _ZN13Mlm_MATLAB_fn4loadEv+00000037
[ 12] 0x00007f7900830b09 /usr/local/MATLAB/R2015b/bin/glnxa64/libmwm_dispatcher.so+00355081 _ZN13Mfh_MATLAB_fn11dispatch_fhEiPP11mxArray_tagiS2_+00000057
[ 13] 0x00007f78faf068af /usr/local/MATLAB/R2015b/bin/glnxa64/libmwm_lxe.so+08612015
[ 14] 0x00007f78fb02a7ff /usr/local/MATLAB/R2015b/bin/glnxa64/libmwm_lxe.so+09807871
[ 15] 0x00007f78fb02047f /usr/local/MATLAB/R2015b/bin/glnxa64/libmwm_lxe.so+09766015
[ 16] 0x00007f78fafed981 /usr/local/MATLAB/R2015b/bin/glnxa64/libmwm_lxe.so+09558401
[ 17] 0x00007f78fac4fd6c /usr/local/MATLAB/R2015b/bin/glnxa64/libmwm_lxe.so+05766508
[ 18] 0x00007f78fac3a4c1 /usr/local/MATLAB/R2015b/bin/glnxa64/libmwm_lxe.so+05678273
[ 19] 0x00007f78fac49075 /usr/local/MATLAB/R2015b/bin/glnxa64/libmwm_lxe.so+05738613
[ 20] 0x00007f78fae1a033 /usr/local/MATLAB/R2015b/bin/glnxa64/libmwm_lxe.so+07643187
[ 21] 0x00007f78fade1c40 /usr/local/MATLAB/R2015b/bin/glnxa64/libmwm_lxe.so+07412800
[ 22] 0x00007f78fade4078 /usr/local/MATLAB/R2015b/bin/glnxa64/libmwm_lxe.so+07422072
[ 23] 0x00007f78fade4140 /usr/local/MATLAB/R2015b/bin/glnxa64/libmwm_lxe.so+07422272
[ 24] 0x00007f78fae5b6bc /usr/local/MATLAB/R2015b/bin/glnxa64/libmwm_lxe.so+07911100
[ 25] 0x00007f78fae5babc /usr/local/MATLAB/R2015b/bin/glnxa64/libmwm_lxe.so+07912124
[ 26] 0x00007f78ffdbbd0d /usr/local/MATLAB/R2015b/bin/glnxa64/libmwm_interpreter.so+02600205 _Z51inEvalCmdWithLocalReturnInDesiredWSAndPublishEventsRKSbIDsSt11char_traitsIDsESaIDsEEPibbP15inWorkSpace_tag+00000077
[ 27] 0x00007f79019b6a12   /usr/local/MATLAB/R2015b/bin/glnxa64/libmwiqm.so+00915986 _ZNK3iqm18InternalEvalPlugin24inEvalCmdWithLocalReturnERKSbIDsSt11char_traitsIDsESaIDsEEP15inWorkSpace_tag+00000098
[ 28] 0x00007f79019b6bd8   /usr/local/MATLAB/R2015b/bin/glnxa64/libmwiqm.so+00916440 _ZN3iqm18InternalEvalPlugin7executeEP15inWorkSpace_tagRN5boost10shared_ptrIN14cmddistributor17IIPCompletedEventEEE+00000120
[ 29] 0x00007f78dafb83b2 /usr/local/MATLAB/R2015b/bin/glnxa64/libnativejmi.so+00861106 _ZN9nativejmi21JmiInternalEvalPlugin7executeEP15inWorkSpace_tagRN5boost10shared_ptrIN14cmddistributor17IIPCompletedEventEEE+00000274
[ 30] 0x00007f78dafdd565 /usr/local/MATLAB/R2015b/bin/glnxa64/libnativejmi.so+01013093 _ZN3mcr3mvm27McrSwappingIqmPluginAdapterIN9nativejmi21JmiInternalEvalPluginEE7executeEP15inWorkSpace_tagRN5boost10shared_ptrIN14cmddistributor17IIPCompletedEventEEE+00000437
[ 31] 0x00007f79019b01c6   /usr/local/MATLAB/R2015b/bin/glnxa64/libmwiqm.so+00889286
[ 32] 0x00007f790199d645   /usr/local/MATLAB/R2015b/bin/glnxa64/libmwiqm.so+00812613
[ 33] 0x00007f78fc51abf9 /usr/local/MATLAB/R2015b/bin/glnxa64/libmwbridge.so+00146425
[ 34] 0x00007f78fc51b1f4 /usr/local/MATLAB/R2015b/bin/glnxa64/libmwbridge.so+00147956
[ 35] 0x00007f78fc5206cd /usr/local/MATLAB/R2015b/bin/glnxa64/libmwbridge.so+00169677
[ 36] 0x00007f78fc5207bc /usr/local/MATLAB/R2015b/bin/glnxa64/libmwbridge.so+00169916
[ 37] 0x00007f78fc520ead /usr/local/MATLAB/R2015b/bin/glnxa64/libmwbridge.so+00171693 _Z8mnParserv+00000749
[ 38] 0x00007f7900b71b4f   /usr/local/MATLAB/R2015b/bin/glnxa64/libmwmcr.so+00686927 _ZN11mcrInstance30mnParser_on_interpreter_threadEv+00000031
[ 39] 0x00007f7900b5e443   /usr/local/MATLAB/R2015b/bin/glnxa64/libmwmcr.so+00607299
[ 40] 0x00007f7900b5ea39   /usr/local/MATLAB/R2015b/bin/glnxa64/libmwmcr.so+00608825 _ZN5boost6detail11task_objectIvNS_3_bi6bind_tIvPFvRKNS_8functionIFvvEEEENS2_5list1INS2_5valueIS6_EEEEEEE6do_runEv+00000025
[ 41] 0x00007f7900b5ff47   /usr/local/MATLAB/R2015b/bin/glnxa64/libmwmcr.so+00614215 _ZN5boost6detail9task_baseIvE3runEv+00000071
[ 42] 0x00007f7900b5ffa7   /usr/local/MATLAB/R2015b/bin/glnxa64/libmwmcr.so+00614311
[ 43] 0x00007f7900b5b2fa   /usr/local/MATLAB/R2015b/bin/glnxa64/libmwmcr.so+00594682
[ 44] 0x00007f78f451a6b6   /usr/local/MATLAB/R2015b/bin/glnxa64/libmwuix.so+00313014
[ 45] 0x00007f78f4500862   /usr/local/MATLAB/R2015b/bin/glnxa64/libmwuix.so+00206946
[ 46] 0x00007f79014f10df /usr/local/MATLAB/R2015b/bin/glnxa64/libmwservices.so+03002591
[ 47] 0x00007f79014f124c /usr/local/MATLAB/R2015b/bin/glnxa64/libmwservices.so+03002956
[ 48] 0x00007f79014f2d9f /usr/local/MATLAB/R2015b/bin/glnxa64/libmwservices.so+03009951
[ 49] 0x00007f79014f384c /usr/local/MATLAB/R2015b/bin/glnxa64/libmwservices.so+03012684 _Z25svWS_ProcessPendingEventsiib+00000092
[ 50] 0x00007f7900b5b9b8   /usr/local/MATLAB/R2015b/bin/glnxa64/libmwmcr.so+00596408
[ 51] 0x00007f7900b5bcd4   /usr/local/MATLAB/R2015b/bin/glnxa64/libmwmcr.so+00597204
[ 52] 0x00007f7900b47fed   /usr/local/MATLAB/R2015b/bin/glnxa64/libmwmcr.so+00516077
[ 53] 0x00007f7909d9c66a              /lib/x86_64-linux-gnu/libpthread.so.0+00030314
[ 54] 0x00007f7909ad201d                    /lib/x86_64-linux-gnu/libc.so.6+01077277 clone+00000109
[ 55] 0x0000000000000000                                   <unknown-module>+00000000


If this problem is reproducible, please submit a Service Request via:
    http://www.mathworks.com/support/contact_us/

A technical support engineer might contact you with further information.

Thank you for your help.
Eli
źródło

Odpowiedzi:

31

Och ... sam znalazłem odpowiedź:

Możesz zmusić MATLAB do załadowania nowszej wersji biblioteki dostarczonej przez system operacyjny, postępując zgodnie z tymi instrukcjami:

  • Zidentyfikuj lokalizację, w której jest zainstalowany MATLAB.
  • Przejdź do sys/os/glnxa64katalogu w tym folderze instalacyjnym.
  • Zmień nazwę libstdc++.so.6biblioteki na libstdc++.so.6.old.
Eli
źródło
Co sądzisz o propozycji Saleha? - - Jak porównujesz swoją odpowiedź do jego?
Léo Léopold Hertz
moje było już takie, więc nie wiem, jakie jest rozwiązanie w moim przypadku$ ls /usr/local/MATLAB/R2016a/sys/os/glnxa64/ libgcc_s.so.1 libgfortran.so.3.0.0 libifport.so.5 libintlc.so.5 libirc.so libquadmath.so.0.0.0 libstdc++.so.6.old README.libstdc++ libgfortran.so.3 libifcore.so.5 libimf.so libiomp5.so libquadmath.so.0 libstdc++.so.6.0.17 libsvml.so
Mona Jalal,
To mi nie zadziałało. Nadal
pojawia
18

Miałem ten problem. ale po zainstalowaniu obsługi Matlaba problem został rozwiązany.

sudo apt-get install matlab-support

Odpowiedziałem na moje pytanie tutaj.

SirSaleh
źródło
Jak myślisz, dlaczego ten pakiet rozwiązuje problem?
Léo Léopold Hertz
@Masi na pewno przynajmniej mój problem związany z czymś w tym pakiecie. To była jedyna rzecz, którą zrobiłem, aby rozwiązać mój problem i zadziałało.
SirSaleh
2
Zainstalowanie pakietu obsługi Matlaba zmienia nazwy starych bibliotek gcc, dzięki czemu robi to samo
Trogdor
+1 za odkrycie przyczyny. Dzięki. @Trogdor :)
SirSaleh
1
To zadziałało dla mnie, ale odpowiedź Yihui nie dotyczy mojej sprawy
Mona Jalal,
1

Używam Ubuntu 16.04LTS na Lenovo ThinkStation S20 z kartą graficzną GeForce 610 i zainstalowanym Matlab R2016a. Nazwę biblioteki zmieniłem powyżej, ale ta poprawka nie zadziałała. Zamiast tego zmieniłem sterowniki ekranu z Nvidii na Nouveau o otwartym kodzie źródłowym. Matlab już działa.

GradBK
źródło
1
Witamy w Ask Ubuntu! Zalecam edycję tej odpowiedzi, aby rozszerzyć ją o szczegółowe informacje na temat tego, jak to zrobić. (Zobacz także Jak napisać dobrą odpowiedź? Zawiera ogólne porady na temat tego, jakie rodzaje odpowiedzi są uważane za najcenniejsze w Ask Ubuntu.)
David Foerster,
0

Mam podobne problemy. Myślę, że problem zaczął się po aktualizacji zastrzeżonego sterownika Nvidia. Używam Nvidia GTX 750 Ti z wersją sterownika, 361.45.18a wersja MATLAB, której używam, to 2016a. (patrz https://devtalk.nvidia.com/default/topic/926199/linux/361-28-crashes-matlab-r2016a/ )

Próbowałem całkowicie zainstalować i ponownie zainstalować wszystkie pakiety nvidia, ale to nie rozwiązało mojego problemu. Potem natknąłem się na ten wątek, wypróbowałem propozycję naprawioną przez @Yihui He (zmiana nazwy libstdc++.so.6). Po wykonaniu tej czynności MATLAB nadal ulega awarii, ale kilka sekund później, po załadowaniu interfejsu użytkownika. Teraz ślad stosu błędu był znacznie wyraźniejszy:

Stack Trace (from fault):
[  0] 0x00007f78d2dea18d               /usr/lib/x86_64-linux-gnu/libGL.so.1+00344461

Wiedziałem, że jest cliprzełącznik do korzystania z oprogramowania openGL, próbowałem tego i MATLAB 2016a nie dało się już zawiesić, zaczynając od:

$ matlab -softwareopengl

Spróbuję zaktualizować ten post, jeśli znajdę ostateczne rozwiązanie, ale może to tymczasowo pomóc innym.

bremme
źródło
Pamiętaj, że korzystanie z oprogramowania OpenGL powoduje utratę niektórych zaawansowanych funkcji graficznych, jak opisano w mathworks.com/help/matlab/ref/opengl.html#buwqyz8-6 .
edwinksl,