gpt4 book ai didi

ubuntu - Octave:可以编译 mex,但出现错误: "failed to install .mex file function"

转载 作者:行者123 更新时间:2023-12-04 19:01:38 30 4
gpt4 key购买 nike

我正在尝试将一段代码从 Matlab 转换为 python。我正在运行 Ubuntu 16.04LTS,需要依靠 Octave 来运行引用代码(Matlab 安装时出现深奥错误)。无论如何,以前从未使用过 Octave,我可能错过了一步,但是在互联网上搜索了一整天后,我找不到解决方案。

部分代码使用了 mex 文件。我可以用 mkoctfile --mex gradientMex.cpp 编译它或 mex --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 )

最佳答案

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

mkoctfile --mex -DMATLAB_MEX_FILE gradientMex.cpp

让你继续前进。但是,您正在探索一个领域,其中 matlab 和 octave 之间的兼容性非常小,我预计会出现其他错误。 YMMV,但也许安装 matlab 可能比将项目移植到 octave 更痛苦,特别是如果您的 matlab 许可证包含安装支持。祝你好运。

关于ubuntu - Octave:可以编译 mex,但出现错误: "failed to install .mex file function",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42055079/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com