2

使用 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 平台,使用gccVisual Studio 2010作为 C 编译器和gfortranFortran 编译器来执行此操作。

我必须只使用支持的 Matlab 编译器吗?

似乎Open Watcom可以创建适合 mex 的目标文件,但我不能使用Open Watcom,因为它只支持f77. 我在 Fortran 中的代码是为在 UNIX 操作系统上运行的 gcc 编译器编写的。

使用 Open Watcom 创建的对象文件似乎有非官方支持:http: //www.mathworks.com/support/solutions/en/data/1-155BQG/? solution=1-155BQG


问题是将所有这些与 Cmake、gcc 或 Visual Studio 以及 gfortran 链接在一起。也许 Cmake 不是最佳的,可以使用其他类型的脚本语言?

我无法在 Windows 上访问 Intel Visual Fortran。

4

0 回答 0