我用gcc编译几个Fortran源文件到*.lib*.dll在Windows平台上,使用最新版本的的MinGW 。所使用的GCC是版本3的输出的结果是arpack_win32.dllblas_win32.dlllapack_win32.dll

然后我要编译 sssimp.f 反对使用英特尔Visual Fortran编译器的Windows ,从而arpack_win32.dllblas_win32.dlllapack_win32.dll,因为sssimp.f使用这些dll。但是给我的感觉(从英特尔支持论坛 ),这是可能的。

我的印象正确?抑或是,只要我能产生潜在的库和动态链接库(无论在哪个编译器,这是多大),我可以把他们作为我的基础库和DLL,我可以从任何现代或链接到它们老,编译器?

有帮助吗?

解决方案

G77使用不同的ABI大于IVF,是的。因此,除非有IVF它不会工作的一些G77 / F2C兼容性选项。

你最简单的解决办法可能是使用IVF编译库了。

其他提示

正如已经指出的,混合的编译器具有不同的调用约定很可能是非常困难的。

在英特尔论坛上回答指出了一个版本ARPACK转换为Fortran 90的的 - 的 http://people.sc.fsu.edu/~burkardt/f_src/arpack/arpack.html - 你能使用吗?另请参见 http://people.sc.fsu.edu/~ burkardt / f_src / LAPACK / lapack.html HTTP ://people.sc.fsu.edu/~burkardt/f_src/blas1_s/blas1_s.html

或Intel的视觉的Fortran应该能够使用合适的编译器选项来编译的Fortran 77。是它拒绝什么语言构造?

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top