asama では work00/tarfile に必要な圧縮ファイルを wget して展開,make を行った. インストール先を /work00/lib-mpi とした (./configure --prefix=/work00/lib-mpi/ソフト名 とする) 使用したMPIの場所は /work00/openmpi1 zlib --- $ cd /work00/tarfile $ wget https://www.zlib.net/zlib-1.2.13.tar.gz $ tar zxvf zlib-1.2.13.tar.gz $ cd /work00/tarfile/zlib-1.2.13 $ ./configure --prefix=/work00/lib-mpi/zlib-1.2.11-mpi (便宜上 zlib-1.2.11 という名前にした.実体 は 1.2.13) $ make $ make check $ sudo make check install hdf5 --- $ cd /work00/tarfile $ tar zxvf $ cd /work00/tarfile/hdf5-1.10.5 $ ./configure --prefix=/work00/lib-mpi/hdf5-1.10.5-mpi --with-zlib=/work00/lib-mpi/zlib-1.2.11-mpi --enable-fortran --enable-parallel $ make $ make check ログインノードでやると Testing t_mpiのところでこける,並列数が足りないとのこと asama102で行うとパスした.がその次のテストが一向に終わらない 最終的にmake check は無視した $ sudo -Es (現在の環境変数を引き継いでrootになるコマンド) # make install # makek check-install netcdf-c --- $ wget https://github.com/Unidata/netcdf-c/archive/v4.6.3.tar.gz $ tar zvxf v4.6.3.tar.gz $ cd netcdf-c-4.6.3 $ export LD_LIBRARY_PATH="/work00/lib-mpi/zlib-1.2.11-mpi/lib:/work00/lib-mpi/hdf5-1.10.5-mpi/lib" $ export LDFLAGS="-L/work00/lib-mpi/zlib-1.2.11-mpi/lib -L/work00/lib-mpi/hdf5-1.10.5-mpi/lib" $ export CPPFLAGS="-I/work00/openmpi1/include -I/work00/lib-mpi/zlib-1.2.11-mpi/include -I/work00/lib-mpi/hdf5-1.10.5-mpi/include" $ ./configure --prefix=/work00/lib-mpi/netcdf-c-4.6.3-mpi --enable-parallel-tests --disable-dap $ sudo -Es # make install netcdf-fortran --- $ wget https://github.com/Unidata/netcdf-fortran/archive/v4.4.5.tar.gz $ tar zxvf v4.4.5.tar.gz $ cd netcdf-fortran-4.4.5 $ export CPPFLAGS="-I/work00/openmpi1/include -I/work00/lib-mpi/zlib-1.2.11-mpi/include -I/work00/lib-mpi/hdf5-1.10.5-mpi/include -I/work00/lib-mpi/netcdf-c-4.6.3-mpi/include" $ export LDFLAGS="-L/work00/lib-mpi/zlib-1.2.11-mpi/lib -L/work00/lib-mpi/hdf5-1.10.5-mpi/lib -L/work00/lib-mpi/netcdf-c-4.6.3-mpi/lib" $ export LD_LIBRARY_PATH="/work00/lib-mpi/zlib-1.2.11-mpi/lib:/work00/lib-mpi/hdf5-1.10.5-mpi/lib:/work00/lib-mpi/netcdf-c-4.6.3-mpi/lib" $ export FCFLAGS="-fallow-argument-mismatch" $ export FFLAGS="-fallow-argument-mismatch" $ ./configure --prefix=/work00/lib-mpi/netcdf-fortran-4.4.5-mpi --enable-parallel-tests --with-pic $ make check (errorが出てくるが無視) $ make $ sudo -Es # make install gtool5 --- $ http://www.gfd-dennou.org/library/gtool/gtool5/gtool5_current.tgz $ cd gtool5-20160613 $ cd gtool5-20160613-mpi/ 環境変数の設定 export CC="mpicc -fPIC" export CXX="mpicxx -fPIC" export FC="mpif90 " export F77="mpif90 " export F90="mpif90 " export CFLAGS="-O2 " export CXXFLAGS="-O2 -cpp" export FFLAGS="-O2 -fPIC -cpp" export FCFLAGS="-O2 -cpp " export F77FLAGS="-O2 -cpp " export F90FLAGS="-O2 -cpp" $ export LD_LIBRARY_PATH="/work00/lib-mpi/zlib-1.2.11-mpi/lib:/work00/lib-mpi/hdf5-1.10.5-mpi/lib:/work00/lib-mpi/netcdf-c-4.6.3-mpi/lib:/work00/lib-mpi/netcdf-fortran-4.4.5-mpi/lib" $ export SYSFFLAGS="-I/eork00/openmpi1/include -I/work00/lib-mpi/zlib-1.2.11-mpi/include -I/work00/lib-mpi/hdf5-1.10.5-mpi/include -I/work00/lib-mpi/netcdf-c-4.6.3-mpi/include -I/work00/lib-mpi/netcdf-fortran-4.4.5-mpi/include" $ ./configure --prefix=/work00/lib-mpi/gtool5-20160613-mpi --enable-mpi --with-netcdf=/work00/lib-mpi/netcdf-c-4.6.3-mpi/lib/libnetcdf.a --with-netcdff=/work00/lib-mpi/netcdf-fortran-4.4.5-mpi/lib/libnetcdff.a --with-netcdf-include=/work00/lib-mpi/netcdf-fortran-4.4.5-mpi/include/netcdf.inc --with-mpiexec=mpiexec $ make エラーが出てできない,1回だけできたが何が功を奏していたのかわからない,make -i で無理やり作ってもDCPAMコンパイルができた. $ make -i 無理やりmake $ sudo -Es # make install ispack --- $ wget http://www.gfd-dennou.org/library/ispack/ispack-1.0.4.tar.gz $ tar zxvf ispack-1.0.4.tar.gz $ cd ispack-2.1.3 # mkdir /work00/lib-mpi/ispack-1.0.4-mpi $ vi Mkinclude DESTDIR = /work00/lib-mpi/ispack-1.0.4-mpi FC = mpif90 FFLAGS = -O3 -Ofast -fPIC MPIFC = mpif90 MPIFFLAGS = -O3 -Ofast -fPIC CC = mpicc CFLAGS = -O3 -Ofast -fPIC SSE = avx $ sudo -Es # make spml --- $ wget http://www.gfd-dennou.org/library/spmodel/spml_current.tar.gz $ tar zxvf spml_current.tar.gz $ cd spml-0.8.0 $ export LD_LIBRARY_PATH="/work00/lib-mpi/zlib-1.2.11-mpi/lib:/work00/lib-mpi/hdf5-1.10.5-mpi/lib:/work00/lib-mpi/netcdf-c-4.6.3-mpi/lib:/work00/lib-mpi/netcdf-fortran-4.4.5-mpi/lib:/work00/lib-mpi/gtool5-20160613-mpi/lib:/work00/lib-mpi/ispack-1.0.4-mpi:/work00/lib-mpi/spml-0.8.0-mpi/lib" $ export FCFLAGS="-fallow-argument-mismatch" $ export FFLAGS="-fallow-argument-mismatch" $ ./configure --with-netcdf=/work00/lib-mpi/netcdf-c-4.6.3-mpi/lib/libnetcdf.a --with-netcdff=/work00/lib-mpi/netcdf-fortran-4.4.5-mpi/lib/libnetcdff.a --with-netcdf-include=/work00/lib-mpi/netcdf-fortran-4.4.5-mpi/include/netcdf.inc --with-gtool5=/work00/lib-mpi/gtool5-20160613-mpi/lib/libgtool5-mpi.a --with-ispack=/work00/lib-mpi/ispack-1.0.4-mpi/libisp.a --with-mpifc=/work00/openmpi1/bin/mpif90 --with-mpiexec=/work00/openmpi1/bin/mpiexec --prefix=/work00/lib-mpi/spml-0.8.0-mpi --with-pic $ make test 1>make_test_log 2>error_make_test_log $ sudo -Es # make install DCPAM --- $ wget http://www.gfd-dennou.org/library/dcpam/dcpam5/dcpam5-20180304-2.tgz $ tar zxvf dcpam5-20180304-2.tgz $ mv dcpam5-20180304-2 dcpam5-20180304-2-mpi $ cd dcpam5-20180304-2-mpi/ $ ./configure --with-netcdf=/work00/lib-mpi/netcdf-c-4.6.3-mpi/lib/libnetcdf.a --with-netcdff=/work00/lib-mpi/netcdf-fortran-4.4.5-mpi/lib/libnetcdff.a --with-netcdf-include=/work00/lib-mpi/netcdf-fortran-4.4.5-mpi/include/netcdf.inc --with-gtool5=/work00/lib-mpi/gtool5-20160613-mpi/lib/libgtool5-mpi.a --with-ispack=/work00/lib-mpi/ispack-1.0.4-mpi/libisp.a --with-spml=/work00/lib-mpi/spml-0.8.0-mpi/lib/libspml-omp.a --with-mpiexec=/work00/openmpi1/bin/mpiexec --enable-mpi $ make