4
\ begingroup美元

我试图将我的一些纬度-经度网格文件网格到三极海洋网格,并发现ESMF是有用的。然而,我发现很难安装同样的东西。

\ endgroup美元

    2答案2

    7
    \ begingroup美元

    首先从。下载esmf tar文件http://www.earthsystemmodeling.org/esmf_releases/public/ESMF_7_1_0r/reg/ESMF_Framework_Down.html

    然后安装netcdf库和gfortran编译器使用

    Sudo apt-get install git TCSH pkg-config Sudo apt-get install gfortran Sudo apt-get install netcdf-bin libnetcdf-dev libnetcdff-dev Sudo apt-get install openmpi-bin libopenmpi-dev Sudo apt-get install libnetcdff-dev

    一旦你在/usr/local/lib和/usr/local/include中有了netcdf库和gfortran编译器,你也可以检查这一点,以根用户登录使用

    sudo -我

    然后定义以下环境变量

    cd path_of_esmf_dir export ESMF_DIR path_of_esmf_dir export ESMF_INSTALL_PREFIX=/usr/local/esmf export ESMF_OS=Linux export ESMF_NETCDF="local" export ESMF_COMM=mpiuni export ESMF_F90COMPILER=gfortran export ESMF_CXXCOMPILER=g++ export esmf_test87_on export ESMF_TESTSHAREDOBJ=on export ESMF_NETCDF_INCLUDE=/usr/local/include export ESMF_NETCDF_LIBS="-lnetcdf - lnetcdf_libpath =/usr/local/lib export ESMF_NETCDF_LIBPATH=/usr/local/lib export ESMF_BOPT=O3

    然后运行以下语法使库成为ESMF

    Make all Make install Make installcheck

    现在安装ESMF python库

    cd path_to_esmf_dir/addon/ESMpy/ python setup.py build——ESMFMKFILE=/usr/local/esmf/lib/libO3/ linux . gfortrans .64.mpiu .default/esmf.mk python setup.py install

    检查安装情况

    $ python >>>导入ESMF

    与ESMF库相比,ESMF python库具有有限的功能。因此,最好直接使用ESMF。

    \ endgroup美元
    4
    • 2
      \ begingroup美元 我明白了:致命错误:无法打开模块文件netcdf。mod'用于读取at(1):没有这样的文件或目录 \ endgroup美元
      - - - - - -软件工程师
      2020年5月1日19:35
    • \ begingroup美元 要么您没有安装netcdf库,要么您的环境变量ESMF_NETCDF_INCLUDE和ESMF_NETCDF_LIBPATH没有指向安装netcdf库的路径 \ endgroup美元
      - - - - - -Manmeet辛格
      2020年5月2日8:03
    • \ begingroup美元 你能通过执行which ndump或wherenetcdf .mod来检查路径吗 \ endgroup美元
      - - - - - -Manmeet辛格
      2020年5月2日8:03
    • 2
      \ begingroup美元 我按照你的指示安装了。问题似乎是包含目录。上面的路径在我的Ubuntu 18.04安装(WSL2)中是空的。将其更改为/usr/include似乎已经修复了构建。谢谢你的指点。删除 \ endgroup美元
      - - - - - -软件工程师
      2020年5月2日16:48
    2
    \ begingroup美元

    实际上,你可能不应该安装它。如果您习惯使用Linux,那么最好建议您使用docker容器,因为它已经安装好了。这样,您的系统就可以保持干净,您可以让其他人为您维护它。

    检查docker hub的不同版本,并找到一个你喜欢的(在这里).

    使用以下方法安装docker:

    curl - ls get.docker.com | sh

    有很多简单的docker教程可以帮助你学会如何使用它。

    \ endgroup美元
    3.

    你的答案

    点击“张贴您的答案”,即表示您同意我们的服务条款隐私政策而且饼干的政策

    这不是你想要的答案?浏览带标签的其他问题问自己的问题