【发布时间】:2015-05-08 07:54:40
【问题描述】:
我使用 Visual Studio 2010 和 ifort 在 Windows(7、64 位)下开发和运行一些 Fortran 代码。
代码大部分编译为 DLL 文件,在 Windows 上进行了测试,部署时间约为25% 的时间用于 Windows(Windows 2000 至 Windows 7)和 75% 的时间用于SUSE Linux。虽然 Windows 解决方案完全由我处理,但 Linux“分支”是由其他人编译的(它是 100% 相同的代码)。 Linux 分支使用 g95/NAG 编译器编译。
由于一些我们无法控制的决定,我们将从 NAG 更改为 gfortran。经过一些测试,我们发现使用 gfortran 编译的代码(以及像 -o2 这样的一些优化)与 Windows 和 ifort 相比需要大约两倍的时间来完成(没有优化,完全调试)。我们有机会在 Linux 和 ifort 下编译代码,得到了 Windows + ifort 的速度。 (NAG 编译的代码介于两者之间。)
出于显而易见的原因,我们希望使用 ifort 为 Windows 和 Linux 编译代码,所以:
是否可以在 Windows 下使用 ifort 为 SUSE Linux 编译(使用 cmd 或 Visual Studio 2010)?
【问题讨论】:
-
当您为支持付费时,最好直接询问英特尔。 AFAIK 这是不可能的。您可以在虚拟机中安装 Linux。
-
AFAIK 在 VM 中安装 Linux 不会使我能够在该机器上使用 ifort 进行编译。最好的解决方案是点击“编译”并获取一个 .dll 和一个 Linux 共享对象。
-
你为什么这么认为?带有 Linux 的虚拟机是一个完整的系统。你可以在那里做任何事情。您的“最佳解决方案”必须得到供应商的支持。问他们,但不要相信这样做。
-
询问您的供应商。您为支持付费!
-
虽然我没有被回答者激怒,但英特尔的支持真的很快。得到他们的回复说他们不支持不同操作系统之间的交叉编译。
标签: linux windows visual-studio-2010 fortran intel-fortran