首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Octave:可以编译mex,但得到错误:“安装.mex文件函数失败”

Octave:可以编译mex,但得到错误:“安装.mex文件函数失败”
EN

Stack Overflow用户
提问于 2017-02-05 17:28:55
回答 1查看 939关注 0票数 1

我正在尝试将一段代码从Matlab转换为python。我正在运行Ubuntu16.04LTS,需要依赖Octave来运行参考代码(Matlab没有安装等温线错误)。无论如何,以前从来没有使用过Octave是可能的,我已经错过了一步,但我找不到解决办法后,花了一天在互联网上搜索。

部分代码使用mex文件。我可以用mkoctfile --mex gradientMex.cppmex --mex gradientMex.cpp编译它。我没有输出,但是在我的工作目录中生成了一个gradientMex.mex文件。但是,当我尝试使用gradientMex()时,我得到了错误failed to install .mex file function 'gradientMex'。在编译了mex文件之后,我需要做些什么吗?

如果它有任何用处,我正在转换的项目是https://github.com/autocyz/DSST,我需要从这里复制一些依赖项:https://github.com/pdollar/toolbox/tree/1a3c9869033548abb0c7a3c2aa6a7902c36f39c2/channels/private (wrappers.hppsse.hpp)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-02-08 20:35:18

在这个特定项目的源代码中,将mex文件加载到matlab/octave中所需的代码包含在#ifdef MATLAB_MEX_FILE部分中,但mkoctfile默认情况下并不定义该变量。所以

代码语言:javascript
复制
mkoctfile --mex -DMATLAB_MEX_FILE gradientMex.cpp

让你继续前进。然而,您正在探索的领域中,matlab和八度之间的兼容性实际上是最小的,我希望其他错误。YMMV,但也许安装matlab可能比将该项目移植到octave更少痛苦,特别是如果您的matlab许可证包括安装支持。祝好运。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42055079

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档