如何完全删除HDF5?


1

我想运行一个使用netCDF4模块的Python脚本。因此我遵循了这里的说明: http://netcdf4-python.googlecode.com/svn/trunk/docs/netCDF4-module.html

出于什么原因,它不适用于我安装的HDF5版本。我在我的主目录中安装了最新版本(1.8.10)。但是Python带有这个错误:

$ import netCDF4
---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
/user/timo/<ipython-input-2-f731da2de255> in <module>()
----> 1 import netCDF4
/user/timo/netCDF4.pyx in init netCDF4 (netCDF4.c:46771)()
ImportError: netCDF4 module must be linked against HDF5 version 1.8.4-patch1 or higher, got 1.8.10

所以我从我的家庭目录中删除了1.8.10版本(手动)的文件夹并安装了1.8.4-patch1。 (也许'.10'版本不兼容?)

但这并没有解决问题。运行Python脚本时的错误仍然相同。这就是为什么我认为必须有某些'.10'版本我没有删除的东西,所以我搜索'hdf5':

4> sudo find / -name 'hdf5'
/user/timo/hdf5
/user/timo/Downloads/hdf5-1.8.4-patch1/windows/proj/hdf5

(在'/ user / timo / hdf5'中是已安装的'1.8.4-patch1'版本)

在我完全删除'1.8.10'版本之后,我想我的Python脚本会运行。谁能帮我吗?

(我正在使用'Ubuntu 12.04.1 LTS'和'Python2.7')

Answers:


0

我绝对不是专家,但是看看你链接的netCDF4页面,你可能需要在安装旧的HDF5版本后重建它。

但是,我想知道你是否使用“必需”下列出的标志构建netCDF4,为什么最新版本不起作用。

是什么 export 说?你的HDF5变量是否设置正确?


0

我会通过运行删除netCDF4和HDF5

apt-get remove --purge python-netcdf hdf5

这也将使相关的包丢失。

这可能更安全:

dpkg -r python-netcdf hdf5
apt-get autoremove

然后重新安装netCDF4和依赖项, 最常用的 来自Ubuntu 14 LTS的文章

apt-get install git git-doc git-el git-email git-gui gitk gitweb git-arch git-bzr git-cvs git-mediawiki git-svn python python-dev python-pip libatlas-base-dev gcc gfortran g++ cython

这对于避免以后的scipy python模块错误很有用[来自www.scipy.org]

apt-get install python-numpy python-scipy python-matplotlib ipython ipython-notebook python-pandas python-sympy python-nose

(重新)安装zlib库:

ftp.unidata.ucar.edu/pub/netcdf/netcdf-4/zlib-1.2.8.tar.gz
cd /home/user/Downloads
tar xvzf zlib-1.2.8.tar.gz
cd zlib-1.2.8
./configure 
make 
make install

(重新)安装curl:

apt-get install curl

(重新)安装HDF5:

ftp.unidata.ucar.edu/pub/netcdf/netcdf-4/hdf5-1.8.9.tar.gz
cd /home/user/Downloads 
tar xvzf hdf5-1.8.9.tar.gz
cd hdf5-1.8.9
./configure --prefix=/usr/local --enable-shared --enable-hl
make -j 2
make install

(重新)安装netCDF4:

ftp.unidata.ucar.edu/pub/netcdf/netcdf-4.3.2.tar.gz
cd /home/user/Downloads
tar xvzf netcdf-4.3.2.tar.gz
cd netcdf-4.3.2

LDFLAGS=-L/usr/local/lib CPPFLAGS=-I/usr/local/include ./configure --enable-netcdf-4 --enable-dap --enable-shared --prefix=/usr/local
make -j 2
make install
make check

最后是netCDF4模块

pip install netcdf4

现在python“import netCDF4”应该可行

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.