2016-07-20 4 views
11

私はFedora 24でmatlab R2016aを実行していますので、plotコマンドを使用することはできません。matlab on linuxは何もプロットできません(libstdC++。so.6:version `CXXABI_1.3.8 'が見つかりません)

これは私が取得エラーです:

Error using gca

While setting the 'Parent' property of 'Axes':

Can't load '/usr/local/MATLAB/R2016a/bin/glnxa64/libmwosgserver.so': /usr/local/MATLAB/R2016a/bin/glnxa64/../../sys/os/glnxa64/libstdc++.so.6: version 'CXXABI_1.3.8' not found (required by /lib64/libGLU.so.1)

Error in newplot (line 73)

ax = gca(fig); 

また、私は見ました How to fix: [program name] /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version CXXABI_1.3.8' not found (required by [program name]) そしてそれは助けにはなりません。

答えて

11

は、この行(複数可)

常にMATLABに同梱されてOpenGLライブラリを使用するには、次の 行のコメントを解除コメントを解除するために、ファイルに記載されています。それは確かにトリックをしたものの

私はMATLABで出荷されたOpenGLを使用すると、パフォーマンスが低下するかどうか好奇心と、一般的に、このアプローチは、@ joe_st_amandの回答と比較んか。

+1

これはまた、終了しようとするときにMATLABの問題を解決し、代わりにすべての永続性のために "ビジー"をストールして言ってしまいます。ここから(https://www.mathworks.com/matlabcentral/answers/299126-r2016a-on-linux-fedora-24-will-not-exit)、私の場合はUbuntu 16.10にも関係します。 – Anthony

9

私は同じバージョンのmatlabとfedoraで同じ問題がありました。 matlabは起動時に独自のライブラリパスをLD_LIBRARY_PATHの前に置いているようです。

あなたはでMATLABを起動すると、以下のものを使用してのlibstdC++の正しいバージョンを使用するようにそれを伝えることができます。 LD_PRELOAD =は/ usr/lib64に/のlibstdC++私が何をしたかso.6 MATLAB -desktop

追加しました私の.bashrcファイルへの別名: エイリアスmatlab = 'LD_PRELOAD =/usr/lib64/libstdC++。so.6 matlab -desktop'

LDPATH_PREFIX='$MATLAB/sys/opengl/lib/$ARCH':私は.matlab7rc.sh内というファイルを編集した(「path_to_ MathWorks社のMATLAB/binに」フォルダに位置し、その隠された)としたすべての行を(それらのいくつかがある)コメント解除して何をしたか

+1

あなたの答えをありがとう。私が投稿した別の回避策を見つけました。 –

0

代替修正:。MATLABはそれを見つけることができず、図書館のシステムのバージョンを使用するように強制されるように

がにlibstdC++ so.6ライブラリファイルの名前を変更します。私が試したし、それが魅力のように働いたhttps://in.mathworks.com/matlabcentral/answers/329796-issue-with-libstdc-so-6

:このファイルは、はmatlabroot/SYS/OS/glnxa64/

ソースに位置しています。

関連する問題