安装I/O API

操作步骤

  1. 使用PuTTY工具,以root用户登录服务器。
  2. 执行以下命令使SMOKE安装运行在“csh”下。

    chsh -s /bin/csh

  3. 执行以下命令重启系统使其生效。

    reboot

  4. 执行以下命令设置环境变量。

    echo "setenv SMK_HOME /path/to/SMOKE" >> /root/.tcsh
    echo "setenv BIN Linux2_aarch64gfort" >> /root/.tcsh
    echo "setenv LD_LIBRARY_PATH /path/to/GNU/gcc9.1/lib64: /path/to/OPENMPI/openmpi-4.0.1-gcc9.1/lib" >> /root/.tcsh
    echo setenv PATH /path/to/OPENMPI/openmpi-4.0.1- gcc9.1/bin:/path/to/GNU/gcc9.1/bin:$PATH>> /root/.tcsh
    echo setenv LD_LIBRARY_PATH /path/to/NETCDF/lib:$LD_LIBRARY_PATH >> /root/.tcsh

  5. 执行以下命令使环境变量生效。

    source /root/.tcsh

  6. 执行以下命令将安装包复制到安装路径下。

    cp smoke_v47.Linux2_x86_64ifort.tar.gz /path/to/SMOKE
    cp smoke_v47.nctox.data.tar.gz /path/to/SMOKE
    cp smoke_install.csh /path/to/SMOKE
    cp ioapi-3.2.tar.gz /path/to/SMOKE
    cd /path/to/SMOKE
    source smoke_install.csh

  7. 执行以下命令创建目录。

    mkdir -p $SMK_HOME/subsys/ioapi
    mkdir -p $SMK_HOME/subsys/ioapi/$BIN

  8. 执行以下命令解压“ioapi-3.2.tar.gz”安装包。

    cp ioapi-3.2.tar.gz ./subsys/ioapi/
    cd ./subsys/ioapi
    tar -xvf ioapi-3.2.tar.gz

  9. 执行以下命令创建“Makefile”文件。

    cd $SMK_HOME/subsys/ioapi/ioapi
    cp Makefile.nocpl Makefile

  10. 执行以下命令修改“Makefile”文件。

    1. 打开“Makefile”文件。
      vi Makefile
    2. 按“i”进入编辑模式,修改以下内容。
      BASEDIR = ${SMK_HOME}/subsys/ioapi
      INSTDIR = ${BASEDIR}/${BIN}
    3. 按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。

  11. 执行以下命令修改“Makeinclude.Linux2_x86_64gfort”文件。

    1. 打开“Makeinclude.Linux2_x86_64gfort”文件。
      vi Makeinclude.Linux2_x86_64gfort
    2. 按“i”进入编辑模式,修改以下内容。
      MFLAGS = -ffast-math -funroll-loops -march=armv8-a
    3. 按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。

  12. 执行以下命令进行编译。

    make

  13. 执行以下命令进行软链接。

    cd ../$BIN
    ln -sf /path/to/NETCDF/lib/libnetcdf.so ./
    ln -sf /path/to/NETCDF/lib/libnetcdff.so ./

  14. 执行以下命令进入“m3tools”目录。

    cd ../m3tools

  15. 执行以下命令修改“Makefile”文件。

    1. 打开“Makefile”文件。
      cp Makefile.nocpl Makefile
      vi Makefile
    2. 按“i”进入编辑模式,修改以下内容。
      BASEDIR = ${SMK_HOME}/subsys/ioapi
      INSTDIR = ${BASEDIR}/${BIN}
    3. 按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。

  16. 执行以下命令编译。

    make