使用mex时出错未知文件扩展名'' Matlab Ubuntu

问题描述

请帮助我在Matlab 2018b Ubuntu20中编译mex文件。我知道了
使用mex时出错
未知文件扩展名''。

编译器设置编译器是g ++,在命令窗口中可以看到。头文件和库位于定义为path1和path2的两个文件夹中。 mex编译的代码是

path1 = '/usr/local/include/OpenEXR/';
path2 = '/usr/local/lib/';
mex ('/mnt/D/D/ZJU Data/HDR/softwre/MatlabEXR/exrinfo.cpp',path1,path2) 

我也尝试过
mex exrinfo.cpp / usr / local / lib / / usr / local / include / OpenEXR /
为什么会出现未知文件扩展名错误?

enter image description here

解决方法

请查看mex命令in the online documentation的语法。

传递给它的参数将被解释为源文件或标志。标志始终以“ -”开头。由于path1path2的开头不是“ -”,因此它们被解释为源文件。但是它们没有扩展名,mex试图使用扩展名来猜测它们是用哪种语言编写的,从而导致错误。

您可能打算这样做:

path1 = '-I/usr/local/include/OpenEXR/';
path2 = '-L/usr/local/lib/';

(““ -I”代表包含路径,“ -L”代表库路径。)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...