DLPOLY(マルチコア処理をサポート)と呼ばれる科学コードをコンパイルしようとしています。これを行う方法についてのオンラインの説明は時代遅れのようであり、makefileには大規模なコンピューティングクラスターの例のみが含まれており、家庭用コンピューターは含まれていません。
手順は次のとおりです。
汎用ターゲットテンプレート
unknown_platform:
$(MAKE) LD="path to FORTRAN90 Linker-loaDer" \ LDFLAGS="appropriate flags for LD (MPI libraries)" \ FC="path to FORTRAN90 compiler" \ FCFLAGS="appropriate flags for FC (MPI include)" \ EX=$(EX) BINROOT=$(BINROOT) $(TYPE)
Xcode CLTとともに、gfortranとopen-mpiをhomebrew経由でインストールしています。簡単であれば、たとえばmacportsを使用してもかまいません。
編集:例えば私はこれを試しました:
LD="ld" LDFLAGS="-L/usr/local/lib" FC="gfortran" FCFLAGS="-I/usr/local/include/"
しかし、このエラーが発生します:
'Use mpi_module' must change to 'Use mpi' in 'comms_module.f90' gfortran -I/usr/local/include/ kinds_f90.f90 Undefined symbols for architecture x86_64: "_MAIN__", referenced from: _main in libgfortranbegin.a(fmain.o) ld: symbol(s) not found for architecture x86_64 collect2: ld returned 1 exit status make[1]: *** [kinds_f90.o] Error 1
だから私は何をする必要があるのか分かりません。さらにグーグルした後、私はそれから試しました:
LD="mpif90" LDFLAGS="-m64" FC="mpif90" FCFLAGS="-m64"
しかし、私は同様のエラーメッセージを受け取りました...