我想要編譯一塊叫做DLPOLY(多核處理的支持),科學的代碼。有關如何做到這一點的說明似乎已過時,並且makefile僅包含大型計算羣集的示例,而不包含家庭計算機。定製的OS X的通用生成文件(使用自制/ gfortran /開放MPI)
說明如下:
Generic target template
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)
我已經gfortran和開放MPI通過自制安裝,使用Xcode的CLTS一起。如果它更簡單,我不介意使用例如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"
,但我已經取得了進展類似的錯誤消息...
你的問題是下溢的那種結果?你有什麼嘗試? –
我編輯了我的問題以包含更多信息。 – Matthew