无效的 mex 文件错误(libstd++ 版本)
Posted
技术标签:
【中文标题】无效的 mex 文件错误(libstd++ 版本)【英文标题】:invalid mex file error (libstd++ version) 【发布时间】:2016-02-26 06:25:36 【问题描述】:我在Linux系统上用Matlab编译了一些代码,生成了.mexa64文件,但是在运行时出现如下错误:
无效的 MEX 文件“/*.mexa64”:/matlab-8.5/bin/glnxa64/../../sys/os/glnxa64/libstdc++.so.6:未找到版本“CXXABI_1.3.8”。
我尝试在 matlab make 文件中通过以下两个命令在 make 文件中设置 -rpath: 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"
但是,它不能解决问题。
【问题讨论】:
你可以找到很多类似的问题,这里有一个:***.com/questions/9959306/… 【参考方案1】:这适用于我的情况: 转到您的 matlab 安装: cd /usr/local/MATLAB/R2015a/sys/os/glnxa64 并重命名这两个文件: sudo mv libstdc++.so.6 libstdc++.so.6.orig sudo mv libgcc_s.so.1 libgcc_s.so.1.orig
【讨论】:
以上是关于无效的 mex 文件错误(libstd++ 版本)的主要内容,如果未能解决你的问题,请参考以下文章
为啥我收到错误“无效的 MEX 文件”,而文件位于当前文件夹中?
MATLAB 无效的 MEX 文件错误:缺少符号 invalid_argument
无效的 MEX 文件错误 CascadeClassifier_.mexmaci64、libopencv_ocl.2.4.dylib