如何在 Ubuntu 上安装 NCL 和 Ferret

如何在 Ubuntu 上安装 NCL 和 Ferret

几个月前我开始使用 Ubuntu。我想在我的计算机上安装“Ferret”和“NCAR 命令语言”,但我不知道该怎么做。有什么方法可以在 Ubuntu 上安装它们吗?

在开始使用 Ubuntu 之前,我曾使用过 Fedora 一段时间,在 Fedora 上我可以轻松安装它们。是我做错了什么,还是它们在 Ubuntu 上不起作用?这些程序对我很重要,因为我是一名气象工程专业的学生,​​我经常使用这些程序。

答案1

现在你可以在 Ubuntu 14.04 中通过 apt-get 安装 ncl。但它有一个 bug。Bughttps://bugs.launchpad.net/ubuntu/+source/ncl/+bug/1329691。你必须做一些链接。

sudo apt-get install ncl-ncarg
sudo ln -s /usr/share/ncarg /usr/lib/ncarg

您可以在 14.04 中开始使用 ncl。

答案2

对于 Ferret 来说,本指南提供详细的(可能已过时的)安装说明。不幸的是,似乎没有.deb可用的文件。

开始之前:

  1. 下载源代码
  2. mkdir ferret_install; cd ferret_install
  3. tar -xvzf ../fer_source.tar.gz
  4. cd FERRET
  5. less README_build_ferret(并阅读安装说明)。

或者,您可以下载.rpm包并使用 alien 安装它。

sudo apt-get install alien dpkg-dev debhelper build-essential
sudo alien rpm_filename.rpm
sudo dpkg -i rpm_filename.deb

可能至少有一些依赖项会失败,您必须手动安装它们。


对于 NCL,Debian 软件包可用的。下载适当的软件包(32 位或 64 位),然后使用 进行安装dpkg -i package_filename.deb。我无法测试这一点,因为他们要求在下载之前进行注册。

答案3

Ferret 现已位于 Ubuntu 主存储库中。可以按如下方式安装:

sudo apt-get install ferret

答案4

Ubuntu 的 apt-get 下可用的 ferret 软件与 NOAA 的 Ferret 不同。

以下是在 Linux 系统上安装 Ferret 和 PyFerret 的简短指南。首先安装以下内容(在 Fedora 中使用 dnf 或 Ubuntu Synaptic Manager)

PyQt4.x86_64
PyQt5.x86_64(python-qt5.x86_64)
gcc-gfortran.x86_64
scipy.x86_64
numpy.x86_64
java-1.8.0-openjdk
libgfortran
libcurl
pango
cairo

转至链接https://github.com/NOAA-PMEL/PyFerret/releases 并获取所需pyferret版本的链接。

mkdir -p ~/pkgs
cd ~/pkgs
wget https://github.com/NOAA-PMEL/PyFerret/releases/download/v7.2.1-final/pyferret-7.2.1-RHEL7-64.tar.gz
wget ftp://ftp.pmel.noaa.gov/ferret/pub/data/fer_dsets.tar.gz
wget ftp://ftp.pmel.noaa.gov/ferret/pub/rhel6_64/fer_environment.tar.gz
wget ftp://ftp.pmel.noaa.gov/ferret/pub/rhel6_64/fer_executables.tar.gz

将它们移动到以下目录。

sudo mkdir -p /usr/local/pyferret
sudo mv pyferret-7.2.1-RHEL7-64.tar.gz /usr/local/pyferret
sudo mv fer_*tar.gz /usr/local/pyferret
cd /usr/local/pyferret

全部提取出来

for f in *.gz
do
sudo tar -zxvf $f
done

运行 Finstall

cd pyferret-7.2.1-RHEL7-64
sudo ./bin/Finstall

第一个问题的答案

/usr/local/pyferret/pyferret-7.2.1-RHEL7-64

第二个查询的答案 /usr/local/pyferret

第三个查询的答案 /usr/local/pyferret

输入 s 进行 bash 链接

输入 python2.7 作为所需的 python 版本

source /usr/local/pyferret/ferret_paths

如果需要,请将此路径保留在 .bashrc 中。

现在安装ferret

cd /usr/local/pyferret
sudo ./bin/Finstall

/usr/local/pyferret 是所有问题的答案,除了 ferret_paths 目录之外

/usr/本地

source /usr/local/ferret_paths

如果需要,请将此路径保留在 .bashrc 中

现在 ferret 和 pyferret 命令都应该可以正常工作。

故障排除:

  1. pyferret 找不到 libgfortran.so.3。问题是,在 fedora27 中,最新的 gcc-gfortran 7 只提供 libgfortran.so.4。我无法安装任何版本的 gcc-gfortran,因此如果提供 libgfortran.so.3(使用 rpm 会破坏一些现有软件包)。我直接从另一个系统(Ubuntu 16.04.3)获取 libgfortran.so.3 和 libgfortran.so.3.0.0,并将它们保存在 ~/pkgs/libs 下,然后 pyferret 使用以下命令工作。导出时,LD_PRELOAD=~/pkgs/libs/libgfortran.so.3:~/pkgs/libs/libopenblas.so.0;pyferret -nojnl 您可以将别名放入 alias pf='export LD_PRELOAD=~/pkgs/libs/libgfortran.so.3:~/pkgs/libs/libopenblas.so.0;pyferret -nojnl'

  2. 如果某些软件包版本不同,请尝试按照以下方式选择所需的版本。

    sudo ln -sf /usr/lib64/libreadline.so.7.0 /usr/lib64/libreadline.so.6 sudo ln -sf /usr/lib64/libhistory.so.7.0 /usr/lib64/libhistory.so.6

  3. 可能需要更多软件包(Ubuntu 中需要 apt-get)

    sudo dnf 安装 libpng15.x86_64 sudo dnf 安装 libpng12.x86_64

  4. 在 ~/.bashrc 中添加 LD_LIBRARY_PATH

    导出 LD_LIBRARY_PATH=/usr/lib/:/usr/lib64/:/usr/local/pyferret/ext_func/libs/:/usr/local/pyferret/lib/python2.7/site-packages/pyferret/

相关内容