MATLAB在执行mex文件时崩溃
我正在尝试运行一个代码(由某人发送给我),该代码使用MATLAB中的mex文件。我已经设法编译了mex文件,但是当我运行调用这些文件的代码时,我得到了如下所示的错误。我不太清楚这里发生了什么,所以任何帮助都将不胜感激MATLAB在执行mex文件时崩溃,matlab,error-handling,mex,Matlab,Error Handling,Mex,我正在尝试运行一个代码(由某人发送给我),该代码使用MATLAB中的mex文件。我已经设法编译了mex文件,但是当我运行调用这些文件的代码时,我得到了如下所示的错误。我不太清楚这里发生了什么,所以任何帮助都将不胜感激 Segmentation violation detected at Mon Sep 10 16:26:11 2012 ------------------------------------------------------------------------ Configu
Segmentation violation detected at Mon Sep 10 16:26:11 2012
------------------------------------------------------------------------
Configuration:
Crash Decoding : Disabled
Current Visual : 0x22 (class 4, depth 24)
Default Encoding: UTF-8
GNU C Library : 2.11.3 stable
MATLAB Root : /cae/apps/data/matlab-2012a
MATLAB Version : 7.14.0.739 (R2012a)
Operating System: Linux 3.2.0-0.bpo.2-amd64 #1 SMP Fri Jun 29 20:42:29 UTC 2012 x86_64
Processor ID : x86 Family 6 Model 42 Stepping 7, GenuineIntel
Virtual Machine : Java 1.6.0_26-b03 with Sun Microsystems Inc. Java HotSpot(TM) 64-Bit Server VM mixed mode
Window System : The X.Org Foundation (11006000), display localhost:10.0
Fault Count: 1
Abnormal termination:
Segmentation violation
MEX代码中肯定有错误。两种可能性: 1.错误是错误检查不足,并且您使用无效的参数(错误的类型、大小、顺序等)调用函数 2.如果您使用的是一组在作者机器上工作的已确认参数,那么代码可能不可移植,并且做出了错误的假设(32/64位、Windows/Linux等) 步骤1:检查您的参数,如果可能的话,使用在作者的计算机上验证过的最小测试集 步骤2:通过调试器运行相同的代码:
这将有助于隔离碰撞的位置。然后修复代码:)MEX代码中肯定有错误。两种可能性: 1.错误是错误检查不足,并且您使用无效的参数(错误的类型、大小、顺序等)调用函数 2.如果您使用的是一组在作者机器上工作的已确认参数,那么代码可能不可移植,并且做出了错误的假设(32/64位、Windows/Linux等) 步骤1:检查您的参数,如果可能的话,使用在作者的计算机上验证过的最小测试集 步骤2:通过调试器运行相同的代码: 这将有助于隔离碰撞的位置。然后修复代码:)