解决: /opt/MATLAB/R2012a/sys/os/glnxa64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found

今天新编译了一个特定版本程序,执行matlab脚本时又遇到这问题:

/opt/MATLAB/R2012a/sys/os/glnxa64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by ../binPablo_volume/bin_pablo)
../binPablo_volume/bin_pablo: /opt/MATLAB/R2012a/sys/os/glnxa64/libgfortran.so.3: version `GFORTRAN_1.4' not found (required by /usr/lib/liblapack.so.3gf)

以前在这里和这里解决过此类(MATLAB/R2012a/bin/glnxa64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found
和MATLAB_Compiler_Runtime libgfortran.so.3: version `GFORTRAN_1.4' not found)问题。现在再次遇到时,其实就只是路径的区别。


解决方法如下:

$ ln -sf /usr/lib/x86_64-linux-gnu/libgfortran.so.3.0.0 /opt/MATLAB/R2012a/sys/os/glnxa64/libgfortran.so.3
$ ln -sf /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.20 /opt/MATLAB/R2012a/sys/os/glnxa64/libstdc++.so.6


具体步骤参考:

$ locate libgfortran.so
/opt/MATLAB/MATLAB_Compiler_Runtime/v717/sys/os/glnxa64/libgfortran.so.3.0.0
/opt/MATLAB/R2012a/sys/os/glnxa64/libgfortran.so.3
/opt/MATLAB/R2012a/sys/os/glnxa64/libgfortran.so.3.0.0
/usr/lib/x86_64-linux-gnu/libgfortran.so.3
/usr/lib/x86_64-linux-gnu/libgfortran.so.3.0.0

$ locate libstdc++.so.6
/opt/MATLAB/MATLAB_Compiler_Runtime/v717/sys/os/glnxa64/libstdc++.so.6
/opt/MATLAB/MATLAB_Compiler_Runtime/v717/sys/os/glnxa64/libstdc++.so.6.0.13
/opt/MATLAB/R2012a/bin/glnxa64/libstdc++.so.6
/opt/MATLAB/R2012a/bin/glnxa64/libstdc++.so.6.0.13
/opt/MATLAB/R2012a/bin/glnxa64/libstdc++.so.6.0.20
/opt/MATLAB/R2012a/sys/os/glnxa64/libstdc++.so.6
/opt/MATLAB/R2012a/sys/os/glnxa64/libstdc++.so.6.0.13
/opt/MATLAB/R2012a/toolbox/edalink/foundation/hdllink/scripts/linux32/libstdc++.so.6
/opt/MATLAB/R2012a/toolbox/edalink/foundation/hdllink/scripts/linux32/libstdc++.so.6.0.13
/opt/MATLAB/R2012a/toolbox/sldv/sldv/polyspace-dvo/lib/x86-linux/libstdc++.so.6
/usr/lib/i386-linux-gnu/libstdc++.so.6
/usr/lib/i386-linux-gnu/libstdc++.so.6.0.20
/usr/lib/x86_64-linux-gnu/libstdc++.so.6
/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.20
/usr/share/gdb/auto-load/usr/lib/i386-linux-gnu/libstdc++.so.6.0.20-gdb.py
/usr/share/gdb/auto-load/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.20-gdb.py

$ strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBC
GLIBCXX_3.4
GLIBCXX_3.4.1
GLIBCXX_3.4.2
GLIBCXX_3.4.3
GLIBCXX_3.4.4
GLIBCXX_3.4.5
GLIBCXX_3.4.6
GLIBCXX_3.4.7
GLIBCXX_3.4.8
GLIBCXX_3.4.9
GLIBCXX_3.4.10
GLIBCXX_3.4.11
GLIBCXX_3.4.12
GLIBCXX_3.4.13
GLIBCXX_3.4.14
GLIBCXX_3.4.15
GLIBCXX_3.4.16
GLIBCXX_3.4.17
GLIBCXX_3.4.18
GLIBCXX_3.4.19
GLIBCXX_3.4.20
GLIBC_2.3
GLIBC_2.2.5
GLIBC_2.14
GLIBC_2.4
GLIBC_2.3.4
GLIBC_2.3.2
GLIBCXX_DEBUG_MESSAGE_LENGTH


$ ln -sf /usr/lib/x86_64-linux-gnu/libgfortran.so.3.0.0 /opt/MATLAB/R2012a/sys/os/glnxa64/libgfortran.so.3

$ ln -sf /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.20 /opt/MATLAB/R2012a/sys/os/glnxa64/libstdc++.so.6


你可能感兴趣的:(libstdc++,libgfortran)