Visual Studio 2010 と Intel Composer XE 2011 SP1 の試用版、Intel と組み合わせた ifort Visual fortran コンパイラを使用して、MPI を使用した X 線吸収スペクトル モデリング用の FDMNES というソフトウェア パッケージを Windows で初めてコンパイルしようとしています。 Pararel Studio 2011. 64 ビット バージョンの ifort を使用してすべてのオブジェクト ファイルをコンパイルすることができましたが、ファイルをリンクするときに、次のエラーが表示されます。
1>------ Build started: Project: Console2, Configuration: Release x64 ------
1>Linking...
1>main.obj : error LNK2019: unresolved external symbol MPI_INIT referenced in function MAIN__
1>main.obj : error LNK2019: unresolved external symbol MPI_COMM_SIZE referenced in function MAIN__
1>main.obj : error LNK2019: unresolved external symbol MPI_COMM_RANK referenced in function MAIN__
1>general.obj : error LNK2019: unresolved external symbol MPI_BCAST referenced in function RESEAU
1>potential.obj : error LNK2001: unresolved external symbol MPI_BCAST
1>main.obj : error LNK2001: unresolved external symbol MPI_BCAST
......etc
1>x64\Release\Console2.exe : fatal error LNK1120: 7 unresolved externals
1>
1>Build log written to "file://C:\Users\Arturo\Documents\Visual Studio 2010\Projects\Console2\Console2\x64\Release\BuildLog.htm"
1>Console2 - 18 error(s), 0 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
コマンド /L"C:\PathtoMPILibrary\" を追加して、64 ビット Intel MPI ライブラリと MPICH2 64 ビット ライブラリにリンクしようとしましたが、うまくいきませんでした。また、mingw32 パッケージの gmake で実行するこの makefile を使用してみました。
#Make file for the fdmnes package
objects = main.obj clemf0.obj coabs.obj convolution.obj dirac.obj fdm.obj fprime.obj general.obj hubbard.obj lecture.obj mat.obj metric.obj minim.obj potential.obj scf.obj selec.obj spgroup.obj sphere.obj sub_util.obj tab_data.obj tddft.obj tensor.obj
compiler = mpif90 -O3 -c
fdmnes_mpi : $(objects)
mpif90 -o fdmnes_mpi $(objects)
main.obj : main.f
$(compiler) main.f
clemf0.obj : clemf0.f
$(compiler) clemf0.f
.....etc
しかし、gmake を実行すると、次のエラーが表示されます。
Intel(R) Visual Fortran Intel(R) 64 Compiler XE for applications running on Intel(R) 64,
Version 12.1.0.233 Build 20110811
Copyright (C) 1985-2011 Intel Corporation. All rights reserved.
ifort: error #10037: could not find 'link'
フォーラムを使い果たしました。64 ビット ウィンドウで MPI を使用してコンパイルする必要があります。どんな助けでも大歓迎です!ありがとう。