帮助中心帮助中心
FORTRAN_COMPLEX_FUNCTIONS_RETURN_VOID
真正的
假
保龄球
< stdbool.h >
。bat
. sh
构建MEX函数或引擎应用程序
墨西哥人文件名
Mex文件名API选项1…optionN
Mex -客户端引擎文件名
客户端引擎文件名API option1…optionN
Mex -setup [lang]
安装客户端引擎[lang]
例子
墨西哥人文件名类编写的一个或多个c++源文件MATLAB数据API for c++转换为当前文件夹中的二进制MEX文件。有关编写这些应用程序的信息,请参见编写MATLAB中可调用的c++函数.
文件名
在编写MEX文件时C矩阵API或者是Fortran矩阵API,然后墨西哥人文件名类生成一个或多个C、c++或Fortran源文件-R2017bapi.在MATLAB的未来版本中®,默认api选项将更改为使用交错的复杂API (-R2018a).MathWorks建议您创建MEX文件并更新现有的MEX文件以使用交错的复杂API。或者,使用MX_HAS_INTERLEAVED_COMPLEX宏来跨MATLAB版本应用所需的行为。有关更多信息,请参见MATLAB支金宝app持交错复杂API在MEX函数.
-R2017b
api
-R2018a
MX_HAS_INTERLEAVED_COMPLEX
有关使用C、c++和Fortran应用程序的信息,请参见集成MATLAB与外部编程语言和系统.
墨西哥人文件名apioption1……optionN使用指定的api和可选的option1……optionN参数。的option1……optionN参数补充或覆盖默认值墨西哥人构建配置。
墨西哥人文件名apioption1……optionN
option1……optionN
墨西哥人
Mex -客户端引擎文件名构建用。编写的c++源文件MATLAB数据API for c++独立的MATLAB引擎应用程序。有关更多信息,请参见c++引擎程序的元素.
如果编写应用程序基于MATLAB Engine API for C,C MAT-File API,Fortran引擎API,或Fortran MAT-File API,然后Mex -客户端引擎文件名属性构建独立应用程序-R2017bapi.在MATLAB的未来版本中,默认的api选项将更改为使用交错的复杂API (-R2018a).MathWorks建议您创建引擎应用程序并更新现有应用程序以使用交错的复杂API。
Mex -客户端引擎文件名apioption1……optionN创建引擎应用程序api和可选的option1……optionN参数。
Mex -客户端引擎文件名apioption1……optionN
Mex -setup [朗]显示有关用于构建MEX文件的给定语言的默认编译器的信息。MATLAB为每种支持的语言定义了默认编译器。金宝app如果给定语言有多个编译器,请使用朗选项更改该语言的默认编译器。有关更多信息,请参见更改默认编译器而且选择一个c++编译器.
Mex -setup [朗]
朗
Mex -setup -客户端引擎[朗]为构建引擎应用程序选择编译器。
Mex -setup -客户端引擎[朗]
全部折叠
中的源代码示例复制matlabroot/外面的例子文件夹中。
matlabroot/外面的例子
拷贝文件(fullfile (matlabroot,“外来的”,“例子”,墨西哥人的,“explore.c”),“。”,“f”)
构建MEX文件。输出显示特定于编译器的信息。
墨西哥人-R2018aexplore.c
通过传递复杂的矩阵来测试函数。
A = [1 3 5];B = [5 3 1];A =复数(A,b);探索(A)
------------------------------------------------ 名称:prhs[0]维度:1 x3类名:双 ------------------------------------------------ ( 1, - 1) = 1 + 5(1、2)= 3 + 3(1、3)= 5 + 1我
构建一个C程序yprime.c一个MEX文件。
yprime.c
matlabroot
/外面的例子
拷贝文件(fullfile (matlabroot,“外来的”,“例子”,墨西哥人的,“yprime.c”),“。”,“f”)
墨西哥人yprime.c
使用“MinGW64编译器(C)”构建。MEX完成成功。
测试。
T = 1;Y = 1:4;yprime (T, Y)
ans =1×42.0000 8.9685 4.0000 -1.0947
若要显示编译和链接命令以及对故障诊断有用的其他信息,请使用详细模式。输出显示特定于平台和编译器的信息。
墨西哥人- v-compatibleArrayDimsyprime.c
使用环境变量指定要传递给编译器的其他选项。
确定变量名:
用于使用MinGW构建c++代码®,macOS、Linux操作系统®编译器,使用CXXFLAGS.
CXXFLAGS
使用MinGW构建C代码,macOS,以及Linux编译器,使用CFLAGS.
CFLAGS
与微软®Visual Studio®编译器,使用COMPFLAGS.
COMPFLAGS
在使用Visual Studio构建MEX文件时指定c++ 17标准。
墨西哥人COMPFLAGS = '美元COMPFLAGS化= c++ 17 'yprime.c
有关在不同平台上使用字符串分隔符的详细信息,请参见覆盖默认编译器开关选项.
构建yprime.c将该值附加到MEX文件中- wall到现有的编译器标志。因为该值包含空格字符,所以必须描述字符串;您使用的字符取决于平台。
- wall
在MATLAB提示符下,使用单引号(').
'
墨西哥人- vCOMPFLAGS = ' $ - wall COMPFLAGS 'yprime.c
对于基于gcc/g++的MinGW-w64编译器,使用Linux编译器标志。选择以下命令之一:
墨西哥人- vCXXFLAGS = ' $ - wall CXXFLAGS 'yprime.cc++编译器墨西哥人- vCFLAGS = ' $ CFLAGS - wall’yprime.c% C编译器
在窗口®命令提示符,使用双引号(").
"
墨西哥人- vCOMPFLAGS = " COMPFLAGS美元- wall”yprime.c
在shell命令行上macOS和Linux,使用单引号(').
墨西哥人- vCFLAGS = ' $ CFLAGS - wall’yprime.c
MEX文件示例fulltosparse包含两个Fortran源文件,loadsparse。F而且fulltosparse。F.要运行这个示例,您需要在系统上安装一个受支持的Fortran编译金宝app器。
fulltosparse
loadsparse。F
fulltosparse。F
将源文件复制到当前文件夹。
拷贝文件(fullfile (matlabroot,“外来的”,“例子”,“refbook”,“loadsparse。F '),“。”,“f”)复制文件(fullfile (matlabroot,“外来的”,“例子”,“refbook”,“fulltosparse。F '),“。”,“f”)
构建fulltosparse墨西哥人文件。MEX文件名称为fulltosparse因为fulltosparse。F命令行上的第一个文件。输出包含特定于编译器的信息。
墨西哥人-largeArrayDimsfulltosparse。Floadsparse。F
使用“Intel Visual Fortran Composer XE 2013与Microsoft Visual Studio 2012”构建。MEX完成成功。
满=眼睛(5);SPAR = fulltosparse(full)
SPAR = 1,1,1,2, 2,1,3,3,1,4,4,1,5,5,1
将当前文件夹中的所有C源文件合并为MEX文件mymex.使用与产出选项来控制MEX文件的名称。
mymex
与产出
墨西哥人与产出mymex* . c
若要在不执行命令的情况下预览生成命令的详细信息,请使用- n选择。输出显示特定于平台和编译器的信息。
- n
墨西哥人- nyprime.c
您可以链接到与源MEX文件分开编译的目标文件。
MEX文件示例fulltosparse由两个Fortran源文件组成。的fulltosparse文件是网关例程(包含mexFunction子例程),loadsparse包含计算例程。
mexFunction
loadsparse
要运行这个示例,您需要在系统上安装一个受支持的Fortran编译金宝app器。将计算子例程复制到当前文件夹。
拷贝文件(fullfile (matlabroot,“外来的”,“例子”,“refbook”,“loadsparse。F '),“。”,“f”)
编译子例程并将目标文件放在单独的文件夹中,c: \ objfiles.
c: \ objfiles
mkdirc: \ objfiles墨西哥人-largeArrayDims- c-outdirc: \ objfilesloadsparse。F
将网关子例程复制到当前文件夹。的编译和链接loadsparse对象文件。
拷贝文件(fullfile (matlabroot,“外来的”,“例子”,“refbook”,“fulltosparse。F '),“。”,“f”)墨西哥人-largeArrayDimsfulltosparse。Fc: \ objfiles \ loadsparse.obj
若要指定包含处理复数例程的MATLAB LAPACK库子例程的路径,请使用-我选择。要使用这些子例程,您的MEX文件必须访问头文件fort.h.
-我
fort.h
复制matrixDivideComplex.c示例添加到当前文件夹。
matrixDivideComplex.c
拷贝文件(fullfile (matlabroot,“外来的”,“例子”,“refbook”,“matrixDivideComplex.c”),“。”,“f”)
创建-我通过连接参数“我”的路径fort.h文件。
“我”
Ipath = [“我”fullfile (matlabroot“外来的”,“例子”,“refbook”));
为LAPACK库文件的名称和路径创建变量,fort.c,包含复杂的数字处理程序。
fort.c
Lapacklib = fullfile(matlabroot,“外来的”,“自由”、计算机(“拱”),“微软”,“libmwlapack.lib”);Fortfile = fullfile(matlabroot,“外来的”,“例子”,“refbook”,“fort.c”);
构建MEX文件。
墨西哥人(“v”,“-R2017b”ipath,“matrixDivideComplex.c”、fortfile lapacklib)
构建matrixDivide.c实例在Windows平台上使用- l而且- l选项来指定libmwlapack.lib图书馆。库文件位于文件夹中matlabrootextern \ \ lib \拱微软\.
matrixDivide.c
- l
libmwlapack.lib
matlabrootextern \ \ lib \拱微软\
拱
复制matrixDivide.c示例添加到当前文件夹。
拷贝文件(fullfile (matlabroot,“外来的”,“例子”,“refbook”,“matrixDivide.c”),“。”,“f”)
捕获的值matlabroot控件中使用的墨西哥人命令。
ans = C:\Program Files\MATLAB\R2014a
捕获的值拱控件中使用的墨西哥人命令。
计算机(“拱”)
Ans = win64
要构建MEX文件,请复制matlabroot而且拱到墨西哥人命令。
墨西哥人lc: \ MATLAB程序文件\ \ R2014a \走读生\ lib \ win64 \微软的...-llibmwlapackmatrixDivide.c
你必须使用'字符,因为\程序文件在路径中包含一个空格。
\程序文件
的mxcreatecharmatrixfromstr.c示例使用#定义象征SPACE_PADDING确定在矩阵中的字符向量之间使用哪个字符。要设置该值,请使用- d选择。
mxcreatecharmatrixfromstr.c
#定义
SPACE_PADDING
- d
将示例复制到当前文件夹。
拷贝文件(fullfile (matlabroot,“外来的”,“例子”,“mx”,“mxcreatecharmatrixfromstr.c”),“。”,“f”)
设置SPACE_PADDING指令在值之间添加空格。
墨西哥人mxcreatecharmatrixfromstr.c-DSPACE_PADDING
使用“MinGW64编译器C”构建。MEX完成成功。
复制engwindemo.c引擎示例到当前文件夹。
engwindemo.c
拷贝文件(fullfile (matlabroot,“外来的”,“例子”,“eng_mat”,“engwindemo.c”),“。”,“f”)
构建一个独立的MATLAB引擎应用程序客户端引擎语法。
客户端引擎
墨西哥人客户端引擎engwindemo.c
如果您在Windows平台上运行,则必须首先将MATLAB注册为COM服务器。有关更多信息,请参见将MATLAB注册为COM服务器.
运行示例。
engwindemo !
墨西哥人设置
的列表为您的版本和系统显示选项金宝app支持和兼容的编译器.
控件中添加选项墨西哥人命令,使用LINKFLAGS命令行选项。例如,在构建时为可执行文件指定环境mymex.c在Windows上,输入:
LINKFLAGS
mymex.c
墨西哥人- vLINKFLAGS = ' $ LINKFLAGS /子系统:windows 'mymex.c
一个或多个文件名,包括名称和文件扩展名,指定为字符串或字符向量。如果文件不在当前文件夹中,请指定文件的完整路径。
文件名可以是以下任意组合:
C、c++或Fortran源文件
金宝app®函数文件
对象文件
静态库文件。文件名必须包含库文件的完全限定路径。要链接动态库,请使用- l库名选择。
- l库名
库名
中列出的第一个源代码文件文件名是二进制MEX文件或引擎应用程序的名称。要重写此命名约定,请使用与产出选择。
使用MATLAB编辑器来编写源代码。如果您使用集成开发环境(IDE),例如Microsoft Visual Studio或Xcode,然后您可以使用墨西哥人命令或遵循指南自定义构建与MEX脚本选项.
的语言,MATLAB自动选择编译器(如果安装了)文件名参数。
-largeArrayDims
-compatibleArrayDims
与特定版本的链接C矩阵API或Fortran矩阵API,指定为表中的值之一。不要将这些选项组合在一起。
不要将此选项用于使用MATLAB数据API for c++.
-R2017b(默认)
构建:
独立的复杂API,包含MATLAB R2017b及更早版本中的C和Fortran矩阵API功能。
大数组处理API,用于处理2个以上的数组311的元素。
将图形对象的句柄处理为对象,而不是双.
对象
双
在MATLAB的未来版本中,默认的api选项将更改为使用交错的复杂API (-R2018a).MathWorks建议您创建应用程序并更新现有应用程序以使用交错的复杂API。或者,使用MX_HAS_INTERLEAVED_COMPLEX宏来跨MATLAB版本应用所需的行为。有关更多信息,请参见MATLAB支金宝app持交错复杂API在MEX函数.
交错复杂API,其中包括类型化数据访问功能。有关更多信息,请参见升级MEX文件以使用交错复杂API.
Large-array-handling API
要运行在R2018a中使用交错复杂API构建的Fortran MEX文件,必须使用R2018a Update 3。
独立的复杂API
将图形对象的句柄处理为对象,而不是双.把手柄当作双,将此选项与-DMEX_DOUBLE_HANDLE.
-DMEX_DOUBLE_HANDLE
版本7.2数组处理API,它将数组限制为2个311的元素
请勿使用-compatibleArrayDims选择的时候调用LAPACK或BLAS函数.
仅适用于C MEX s功能的默认选项。
例子:c .搜索
c .搜索
可选生成选项,指定为本表中的值之一。选项可以在任何平台上以任何顺序出现,除非另有说明。
@rspfile
rspfile
使用Windows RSP文件。RSP文件是包含命令行选项的文本文件。不支持非ascii字符。金宝app
- c
只编译一个目标文件。不构建二进制MEX文件。
构建引擎应用程序。
- dsymbolname- dsymbolname=symbolvalue- usymbolname
- dsymbolname
symbolname
- dsymbolname=symbolvalue
symbolvalue
- usymbolname
的- doptions定义了C预处理器宏。相当于源文件中的以下内容:
#定义symbolname
#定义symbolnamesymbolvalue
的- u选项删除C预处理器宏的任何初始定义,symbolname.的倒数- d选择。
- u
中间不加空格吗D或U而且symbolname.的周围不要添加空格=的迹象。
例子:定义编译器指令
- ffilepath
filepath
覆盖默认编译器选择。filepath配置文件的名称和完整路径,指定为字符串或字符向量。有关使用非默认编译器的信息,请参见更改默认编译器.
请勿使用- f构建引擎应用程序的选项。使用客户端引擎选项。
- f
- g
添加符号信息并禁用构建的目标代码的优化。用于调试。
- h (elp)
显示帮助墨西哥人.从操作系统提示符中使用。
-我路径名
路径名
增加了路径名到要搜索的文件夹列表# include文件。
# include
中间不加空格吗我而且路径名.
我
例子:指定包含文件的路径
- l库名- llibfolder- l库名
- llibfolder- l库名
libfolder
与动态对象库的链接库名(可选)libfolder.
MATLAB的扩张库名:
库名. lib或自由库名. lib- Windows系统
. lib
自由
自由库名. dylib- - - - - -macOS系统
. dylib
自由库名所以—Linux系统
所以
如果使用,- l选项必须在- l选择。当使用- lLinux或macOS系统中,还必须设置运行时库路径,如中所述设置运行时库路径.
指定- l选项中包含小写字母l.中间不加空格吗l而且库名之间或l而且libfolder.
l
要链接静态库,使用文件名输入参数。
例子:指定库文件的路径
显示但不执行命令墨西哥人将执行。
例子:预览构建命令
- o
优化目标代码。使用此选项可进行优化编译。优化在默认情况下是启用的。
用大写字母指定此选项O.
-outdir目录名
目录名
将所有输出文件放在文件夹中目录名.
例子:创建并链接到分离的对象文件
与产出mexname
mexname
覆盖默认的MEX文件命名机制。创建一个名为mexname使用适当的MEX文件扩展名。
例子:使用通配符组合源文件
设置朗
将默认编译器更改为build朗语言MEX文件或引擎应用程序。当您使用此选项时,墨西哥人忽略所有其他命令行选项。
沉默
抑制信息消息。的墨西哥人命令在指定时仍然报告错误和警告沉默.
删除C预处理器宏的任何初始定义symbolname.(逆的- d选择。)
中间不加空格吗U而且symbolname.
U
- v
以详细模式构建。在考虑所有命令行参数后,显示内部变量的值。显示完整评估的每个编译和链接步骤。用于排除编译器设置问题。
例子:显示详细的生成和故障排除信息
varname=varvalue
varname
varvalue
附加值到环境变量varname.在考虑所有命令行参数后处理此选项。
例子:
附加编译器选项
覆盖默认编译器开关选项
C
c++
CPP
Fortran
语言,指定为这些不区分大小写的值之一。
C编译器,包括c++
c++编译器
Fortran编译器
你可以跑墨西哥人来自:
MATLAB命令窗口
Windows系统提示符
macOS终端
Linux shell
对于MATLAB以外的命令行使用,墨西哥人程序位于指定的文件夹中[matlabroot ' / bin ']在UNIX和[matlabroot ' \ bin \ win64 ']在Windows上。
[matlabroot ' / bin ']
[matlabroot ' \ bin \ win64 ']
MEX文件有一个平台相关的扩展名。您可以将不同平台的二进制MEX文件放在同一个文件夹中。要识别MEX文件扩展名,请使用mexext函数。
mexext
MEX文件平台相关扩展
Linux(64位)
mexa64
苹果Mac(64位)
mexmaci64
Windows(64位)
mexw64
使用墨西哥人为独立的MATLAB引擎应用程序构建可执行文件,请使用客户端引擎选择。
的墨西哥人命令不支持包含双引号(金宝app")字符。
全部展开
MATLAB现在在Windows上使用UTF-8作为系统编码,完成了对Unicode的采用®在所有支持的平台上。金宝app在MEX文件中进行的系统调用接受并返回UTF-8编码的字符串。如果您的MEX文件包含代码或指向假设不同系统编码的第三方库的链接,那么您可能会看到乱码文本,因此需要更新代码以符合Unicode。
对于在R2021b和更早版本中构建的MEX文件,MATLAB提供了一个宏,FORTRAN_COMPLEX_FUNCTIONS_RETURN_VOID,以处理向Fortran BLAS和LAPACK函数传递复数时平台相关的调用语法差异。从R2022a开始,在不同的平台上不再需要不同的调用语法,处理这种差异的宏已经被删除。
要更新代码,请使用FORTRAN_COMPLEX_FUNCTIONS_RETURN_VOID:
/*调用BLAS函数*/ /*在不同的平台上使用不同的调用语法*/ #ifdef FORTRAN_COMPLEX_FUNCTIONS_RETURN_VOID zdotu(&result, &nElements, zinA, &incx, zinB, &incy);#else result = zdotu(&nElements, zinA, &incx, zinB, &incy);# endif
:
/*调用BLAS函数*/ zdotu(&result, &nElements, zinA, &incx, zinB, &incy);
从R2021b Update 3开始,MATLAB支持Mic金宝approsoft Visual Studio 2022构建C和c++接口、MEX文件以及独立的MATLAB引擎和mat文件应用程序。
MATLAB支金宝app持gcc版本5。用于在Linux上构建C和c++接口、MEX文件以及独立的MATLAB引擎和mat文件应用程序。如果使用4.0或更早版本,MATLAB将显示警告。
在macOS在Linux平台上,MATLAB采用UTF-8作为系统编码。系统调用从构建的MEX文件中进行macOS或Linux接收并返回UTF-8编码的字符串。如果您的MEX文件包含代码或指向假设不同系统编码的第三方库的链接,那么您可能会看到乱码文本,因此需要更新代码以符合Unicode。
在Windows平台上,如果使用Unicode UTF-8提供全球语言支持金宝app选项在Windows中已启用地区然后MATLAB使用UTF-8作为系统编码。
该表列出了MATLAB中编译器支持的变化,用于构建C和c++接口、MEX文件以及独金宝app立的MATLAB引擎和mat文件应用程序。
若要继续支持构建应用程序,请金宝app考虑升级到中所示的受支持的编译器金宝app支持和兼容的编译器-发布2020a.
添加
英特尔®Parallel Studio XE 2020适用于C, c++和Fortran
窗户
Intel Parallel Studio XE 2020 for Fortran
macOS
苹果Xcode11.倍
停止
英特尔并行工作室XE 2017
若要继续支持构建应用程序,请金宝app考虑升级到中所示的受支持的编译器金宝app支持和兼容的编译器-发布2019b.
Microsoft Visual Studio2019年C和c++
Intel Parallel Studio XE 2015和XE 2016用于Fortran
的定义真正的,假,保龄球在Windows和Linux平台上使用C99兼容编译器构建MEX文件和独立的MATLAB引擎和mat文件应用程序。MATLAB定义这些值使用< stdbool.h >定义为IEEE Std 1003.1:
头文件应该定义以下宏:展开为整数常数1。false展开为整数常数0。_bool_true_false_are_defined展开为整数常量1。
在R2019a及更早的版本中,MATLAB将Windows和Linux平台上的这些值定义为:
真正的- - - - - -#定义作为1
1
假- - - - - -#定义作为0
0
保龄球- - - - - -类型定义作为无符号字符
类型定义
无符号字符
为macOS平台,没有变化。
此表列出了在MATLAB中添加的用于构建C和c++接口、MEX文件以及独立的MATL金宝appAB引擎和mat文件应用程序的英特尔编译器支持。
Intel Parallel Studio XE 2019与Microsoft Visual Studio 2015和2017用于C、c++和Fortran
Intel Parallel Studio XE 2019 for Fortran
的Fortran矩阵API金宝app支持复数的交错存储表示。有关更多信息,请参见MATLAB支金宝app持交错复杂API在MEX函数
如果您构建的是Fortran MEX函数,那么您应该复习我需要升级我的MEX文件来使用交错复杂API吗?
请注意
此表列出了MATLAB中编译器支持构建C接口、MEX文件以及独立的MATLAB引擎金宝app和mat文件应用程序的更改。
若要继续支持构建应用程序,请金宝app考虑升级到中所示的受支持的编译器金宝app支持和兼容的编译器-发布2018b.
MinGW-w64编译器从6.3.0版本开始https://mingw-w64.org
英特尔并行工作室XE 2018与Microsoft Visual Studio2015年和2017年的C, c++和Fortran
Intel Parallel Studio XE 2018 for Fortran
微软Visual c++®2013个专业
使用现代c++设计模式、扩展数据类型支持和MATLAB写时复制语义编写MEX函数,以便更快地处理大型数据数组。金宝app有关更多信息,请参见编写MATLAB中可调用的c++函数.
如果您不需要在R2017b及更早版本中工作的MEX文件,并且您熟悉现代c++,那么可以考虑使用新的c++ mex API而且MATLAB数据API for c++.如果您更喜欢使用C语言,请继续使用C MEX API和C Matrix API。
MATLAB使用交叉复数的存储表示。这个词交错复杂指这个表示法,其中实部和虚部存储在一起。有关更多信息,请参见MATLAB支金宝app持交错复杂API在MEX函数.
如果您构建C MEX函数,C/ c++ MEX s -函数,或独立的MATLAB引擎和mat文件应用程序,那么您应该复习我需要升级我的MEX文件来使用交错复杂API吗?MATLAB不支持Fortran金宝app函数的交错复杂API。
此更改不影响MATLAB语言。中描述的功能可以继续使用复数无需对函数和脚本进行任何修改。
的墨西哥人命令有新的构建选项,-R2017b而且-R2018a的特定发布版本链接C矩阵API.
-R2017b—默认选项。该选项相当于以下命令:
墨西哥人mymex.c-largeArrayDims-DMEX_DOUBLE_HANDLE
-R2018a—使用交错复杂API,包括类型化数据访问函数。有关更多信息,请参见MATLAB支金宝app持交错复杂API在MEX函数.
尽管MATLAB使用Boost库版本1.56 6.0构建,但从R2018a开始,您可以在MEX函数中指定任何Boost库版本。
若要继续支持构建应用程序,请金宝app考虑升级到中所示的受支持的编译器金宝app支持和兼容的编译器-发布2018a.
GNU®GCC和gfortran版本6.x。推荐使用6.3版本。
Linux
GNU gcc和gfortran版本4.9.x
苹果Xcode7.倍
Intel c++ Composer XE 2013
Intel Fortran Composer XE 2013
被逐步淘汰
Visual c++ 2013 Professional
若要继续支持构建应用程序,请金宝app考虑升级到中所示的受支持的编译器金宝app支持和兼容的编译器-发布2017b.
微软Visual c++2017年专业版、社区版和企业版
微软Visual c++除了继续支持专业版外,还支持2015年和2013年社区版和企业版金宝app
Microsoft Visual Studio2015 (v140)工具集安装在Visual Studio 2017
MinGW-w64编译器5.3.0版本https://mingw-w64.org
英特尔并行工作室XE 2017与Microsoft Visual Studio2017年C, c++和Fortran
MinGW-w64版本4.9.2编译器来自TDM-GCC
微软Visual c++2012个专业
微软Windows SDK 7.1
金宝app对GNU gcc和gfortran 4.9版的支持将在未来的版本中停止,届时将支持新版本。
的墨西哥人函数使用大数组处理API (-largeArrayDims选项)。最佳实践是更新您的MEX源代码以使用此库并重新构建MEX文件。有关说明,请参见升级MEX文件以使用交错复杂API.
您可以运行现有的二进制MEX文件,而无需重新构建。有关更多信息,请参见MEX版本兼容性.
方法构建MEX文件时,如果不使用墨西哥人命令选项-largeArrayDims或-compatibleArrayDims,然后查看下表,以避免依赖R2017a中更改的默认行为。属性的后果的信息-compatibleArrayDims选项构建MEX文件,请参见如果我不升级怎么办?
C MEX s -函数的默认构建模式保持不变-compatibleArrayDims.
此表显示了您必须对您的墨西哥人命令重建MEX文件或s -函数。
源代码
MEX文件C/ c++或Fortran源代码使用32位API
墨西哥人myMex.c
mex mymexico .c - compatibllearraydims
没有变化。
MEX文件C/ c++或Fortran源代码使用64位API
mex mymexico .c -largeArrayDims
使用:墨西哥人myMex.c
或继续使用:mex mymexico .c -largeArrayDims
S-function C/ c++源代码使用32位API
墨西哥人sfun.c
mex sfuns .c -compatibleArrayDims
S-function C/ c++源代码使用64位API
mex sfun.c -largeArrayDims
S-function Fortran源代码使用32位API
墨西哥人sfun。F
墨西哥人sfun。F-compatibleArrayDims
S-function Fortran源代码使用64位API
墨西哥人sfun。F-largeArrayDims
MATLAB在该表中添加了金宝app对编译器的支持,用于构建C接口、MEX文件以及独立的MATLAB引擎和mat文件应用程序。
Intel Parallel Studio XE 2017 for Fortran
Xcode 8。x,从R2016b开始
的墨西哥人命令在MATLAB R2016b及更高版本构建的MEX文件中嵌入MEX版本号。这个数字标识了MEX函数期望在运行时链接到的Matrix API的版本。
如果您不使用墨西哥人命令,则必须更新用于构建MEX文件的命令。有关更多信息,请参见不使用MEX命令编译MEX文件.
若要继续支持构建应用程序,请金宝app考虑升级到中所示的受支持的编译器金宝app支持和兼容的编译器-发布2016b.
GNU gcc和gfortran版本4.9
GNU gcc和gfortran版本4.7
Intel Parallel Studio XE 2016 for FortranIntel Parallel Studio XE 2015 for Fortran
Mac OS X
Microsoft Visual Studio2010个专业
Visual c++ 2012专业版
苹果Xcode6.2
的墨西哥人命令- f选项不接受参数。bat或. sh文件扩展名。
而不是使用- f选项指定编译器,请使用中描述的工作流更改默认编译器.
可以使用。修改编译器构建选项墨西哥人命令选项。例如,使用- l而且-我在系统上定位库的选项。使用varname=varvalue选项,将选项传递给编译器。
若要继续支持构建应用程序,请金宝app考虑升级到中所示的受支持的编译器金宝app支持和兼容的编译器-发布2016a.
Intel Parallel Studio XE 2016英特尔并行工作室XE 2015Intel c++ Composer XE 2013 withMicrosoft Visual Studio2013
Microsoft Visual Studio2008专业版英特尔C + +作曲家XE 2011Microsoft Visual Studio2010Intel Visual Fortran Composer XE 2011 withMicrosoft Visual Studio2010
Microsoft Visual Studio2010专业版微软Windows SDK 7.1
dbmex|mexext|电脑|系统
dbmex
电脑
系统
我不知道你在说什么。想要一个美好的梦?
海脂循环匹配函数对应求解MATLAB:
Esegui il commanmando inserendolo nella finestra di commanmando MATLAB。我的浏览器web不支持和MATLAB金宝app。
选择一个网站,在可用的地方获得翻译的内容,并查看当地的活动和优惠。根据您所在的位置,我们建议您选择:.
您也可以从以下列表中选择一个网站:
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。
联系当地办事处