使用Windows 7,使用Matlab R2011a(32位),我想使用Cmake编译用C编写的Matlab mex文件(procedure.c
)。此文件包含void mexFunction()
所需的文件与Matlab接口。但是,此文件中的C代码调用以Fortran 95编写的子例程(在文件fp.F
中找到)。
至少,有两个文件需要编译:
procedure.c
fp.F
将来,我将不得不最终编译并链接其他C代码文件和Fortran函数。
我想使用Windows平台执行此操作,gcc
或Visual Studio 2010
作为C编译器,gfortran
作为Fortran编译器。
我必须只使用支持的Matlab编译器吗?
似乎Open Watcom
可以创建适合mex的目标文件,但我不能使用Open Watcom
,因为它只支持f77
。我在Fortran中的代码是为在UNIX OS上运行的gcc编译器编写的。
对使用Open Watcom创建的目标文件似乎有非官方支持: http://www.mathworks.com/support/solutions/en/data/1-155BQG/?solution=1-155BQG
问题是将所有这些与Cmake,gcc或Visual Studio以及gfortran连接在一起。也许Cmake不是最优的,可以使用另一种脚本语言吗?
我无权访问Windows上的英特尔Visual Fortran。