原因分析
1.有可能是因为当前matlab目录下存在多个同名文件,造成出错。
2.有可能因为当前运行环境中存在某个变量,与文件名或者函数名相同,造成出错。
3.windows下编译cpp生成的mexw64文件不能在linux环境下继续使用,造成出错。
相对应的解决方法
1.更换同名文件的文件名,使之不重复,可以使用如下命令进行查询:
which **.m -all
2.更换当前目录中的变量名,或者是文件名。
3.在linux环境下,重新使用make命令编译,生成对应的mexa64文件,并添加至matlab的path目录即可。
结语
大多数网上的帖子提供的是前两个解决方法,但是我是使用第三个方法解决的。
同样的报错可能是不同原因引起的,了解报错原因才能更快处理。