无效的mex文件错误(libstd ++版本) [英] invalid mex file error (libstd++ version)
问题描述
我在Linux系统上的Matlab中编译了一些代码,并生成了.mexa64文件,但是在运行时出现以下错误:
I compiled some codes in Matlab on a Linux system, and .mexa64 files has been generated, but in run time, I get the following error:
无效的MEX文件'/*.mexa64':/matlab-8.5/bin/glnxa64/../../sys/os/glnxa64/libstdc++.so.6:未找到版本"CXXABI_1.3.8".
Invalid MEX-file '/*.mexa64': /matlab-8.5/bin/glnxa64/../../sys/os/glnxa64/libstdc++.so.6: version `CXXABI_1.3.8' not found.
我尝试通过matlab make文件中的以下两个命令在make文件中设置-rpath: LDFLAGS ="\ $ LDFLAGS -rpath =/usr/local/GNU/glibc-2.22/lib/"
i tried setting -rpath in make file by two following commands in matlab make file: LDFLAGS="\$LDFLAGS -rpath=/usr/local/GNU/glibc-2.22/lib/"
LDFLAGS ="\ $ LDFLAGS -dynamic-linker =/usr/local/GNU/glibc-2.22/lib/ld-linux-x86-64.so.2"
LDFLAGS="\$LDFLAGS -dynamic-linker=/usr/local/GNU/glibc-2.22/lib/ld-linux-x86-64.so.2"
但是,它不能解决问题.
But, it cannot solve the problem.
推荐答案
这适用于我的情况: 转到您的matlab安装: 光盘/usr/local/MATLAB/R2015a/sys/os/glnxa64 并重命名这两个文件: 须藤MV libstdc ++.so.6 libstdc ++.so.6.orig sudo mv libgcc_s.so.1 libgcc_s.so.1.orig
This worked for my case: Goto your matlab installation: cd /usr/local/MATLAB/R2015a/sys/os/glnxa64 and rename these two files: sudo mv libstdc++.so.6 libstdc++.so.6.orig sudo mv libgcc_s.so.1 libgcc_s.so.1.orig
这篇关于无效的mex文件错误(libstd ++版本)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!