3

我在文件夹 /ex 中有一个 main.f90。f77 子程序文件在 /ex/src 中。并且子程序文件再次使用 BLAS 和 LAPACK 库。对于 BLAS 和 LAPACK,我必须使用 Intel Math Kernel Library。

Intel fortran 和 mkl 文件夹如下所示:

/opt/intel$
ActivationTool  composer_xe_2011_sp1         intel_sdp_products.db  man
bin             composer_xe_2011_sp1.11.339  lib                    mkl
composerxe      include                      licenses

/opt/intel/mkl$
benchmarks  bin  examples  include  interfaces  lib  tests  tools

/opt/intel/mkl/lib/ia32$
libmkl_avx.so             libmkl_gnu_thread.so     libmkl_scalapack_core.so
libmkl_blacs.a            libmkl_intel.a           libmkl_sequential.a
libmkl_blacs_intelmpi.a   libmkl_intel.so          libmkl_sequential.so
libmkl_blacs_intelmpi.so  libmkl_intel_thread.a    libmkl_solver.a
... (a bunch of files) ...

/ex 中要编译的 main.f90 的 makefile 代码是什么?谢谢!

4

1 回答 1

1

我猜您使用的是版本 12(从composer_xe_2011_sp1.11.339/opt/intel 中猜测),因此您可以-mkl在像这样链接时简单地使用选项:

ifort main.o sub1.o sub2.o -o a.out -mkl

(参见: http: //software.intel.com/en-us/articles/using-mkl-in-intel-compiler-mkl-qmkl-options

于 2012-10-15T01:08:08.863 回答