GNU系統下DL POLY的編譯

2021-06-21 10:21:32 字數 784 閱讀 7931

序列版本的編譯

1.將build資料夾下的makefile_slr1重新命名為makefile複製到source資料夾下

2.修改makefile中的編譯器設定,line241-line256 中的f95改為gfortran

3.修改source檔案下的

comms_module.f90中的line13 use mpi!_module為use mpi_module

4.執行編譯 

make win

並行版本的編譯

編譯環境為gfortran+openmpi

1.將build資料夾下的makefile_mpi重新命名為makefile複製到source資料夾下

2.修改makefile中的編譯器設定,line230-line235 hpc 

ldflags="-o3"改為ldflags="-o2 -ffast-math" 

fcflags="-o3"改為fcflags="-o2 -ffast-math"

3.執行編譯 

make hpc

進行計算時,執行

mpirun -np -n dlpoly.z

n為使用的cpu核數。

若顯示程式錯誤「已殺死」,可以執行 

mpirun -np -n dlpoly.z > output

在Windows系統下使用GNU命令

日常接觸和管理的系統,大多是linux unix系統,所以在自己的windows作業系統上,配置乙個gnu命令環境,可以在windows系統使用linux命令,方便命令的練習和掌握。windows環境gnu的配置步驟如下 其中有基本包和公升級包兩個包 unxutils.zip 基本包 unxutil...

GNU下的柔性陣列

結果 在標準c和c 中0長陣列如chararray 0 是不允許使用的,因為這從語義邏輯上看,是完全沒有意義的。但是,gun中卻允許使用,而且,很多時候,應用在了變長結構體中,如 structpacket 首先對0長陣列做乙個解釋 用途 長度為0的陣列的主要用途是為了滿足需要變長度的結構體。用法 在...

mingw64下為ffmpeg編譯gnutls小結

筆者採用版本為 gnutls 3.5.19,編譯過程中遇到的2個問題 1 合理使用自帶openssl libunistring libtasn1庫函式,減少對外部第三方庫的依賴,選項引數 紅色標註 如下 enable local libopts enable openssl compatibilit...