【问题标题】:Mex doesn't recognize type 'Matrix'Mex 无法识别类型“矩阵”
【发布时间】:2015-02-21 21:32:02
【问题描述】:

我正在尝试为 c 函数创建一个 mex 文件,该函数应该是 Chaco http://www.cerfacs.fr/algor/Softs/MESHPART/ 的 Matlab 接口(Chaco 是一个图形分区软件)。

我对 Makefile 进行了相当多的修改以使其能够与我的 Debian 一起使用。但是,有一个我无法解决的错误。当我运行 mex 命令时 mex -output mlchaco ${mlfiles.c} chaco.a -I chaco/main

我收到以下错误:

mlchaco.c:55:5: error: unknown type name 'Matrix'

我的 mex 命令行中的 chaco.a 选项是:

chaco.a: ${CHFILES.o} ${AR} chaco.a ${CHFILES.o} ; ${RANLIB} chaco.a

导致错误的c代码的前几行是

void mexFunction(
int nlhs, /* number of expected outputs */ Matrix *plhs[], /* matrix pointer array returning outputs */ int nrhs, /* number of inputs */ Matrix *prhs[] /* matrix pointer array for inputs */ )

【问题讨论】:

    标签: linux matlab types mex cc


    【解决方案1】:

    Matrix 替换为mxArray,这是MATLAB 传递的类型。请务必include "mex.h"

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-02-08
      • 2021-03-02
      • 1970-01-01
      • 1970-01-01
      • 2018-07-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多