Como excluir completamente o HDF5?

1

Eu quero rodar um script Python que use o módulo netCDF4. Por isso, segui as instruções aqui: link

Por qualquer motivo, não funciona com o HDF5-Versão I instalado. Eu instalei a última versão (1.8.10) no meu diretório home. Mas o Python vem com esse erro:

$ 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

Então apaguei as pastas da versão 1.8.10 (manualmente) do meu diretório home e instalei o 1.8.4-patch1. (Talvez a versão '.10' não seja compatível?)

Mas isso não resolve o problema. O erro quando eu executo o script Python ainda é o mesmo. É por isso que achei que deve haver algo em algum lugar da versão '.10' que eu não deletei, então procurei por 'hdf5':

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

(em '/ user / timo / hdf5' está instalada a versão '1.8.4-patch1')

Acho que meu script Python será executado, depois que eu tiver excluído completamente a versão '1.8.10'. Alguém pode me ajudar?

(estou usando o 'Ubuntu 12.04.1 LTS' e 'Python2.7')

    
por Timo 16.11.2012 / 09:52

2 respostas

0

Eu definitivamente também não sou um expert, mas olhando para a página netCDF4 que você conectou, você provavelmente terá que reconstruí-la depois de instalar a versão mais antiga do HDF5.

No entanto, estou querendo saber se você cria netCDF4 com os sinalizadores listados em "Obrigatório", porque a versão mais recente não deve funcionar.

O que export diz? Suas variáveis HDF5 estão corretas?

    
por 01.04.2013 / 00:40
0

Eu removeria ambos netCDF4 e HDF5 executando

apt-get remove --purge python-netcdf hdf5

Isso também eliminará os pacotes relacionados.

Isso pode ser mais seguro:

dpkg -r python-netcdf hdf5
apt-get autoremove

seguido por reinstalação do netCDF4 e dependências, usou a maioria dos de um artigo para o 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

isto é bom para evitar erros de módulo python mais recentes [a partir de www.scipy.org]

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

(re) instala a biblioteca 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

(re) instalar o curl:

apt-get install curl

(re) instala o 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

(re) instala o 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

e finalmente o módulo netCDF4

pip install netcdf4

agora o python "import netCDF4" deve funcionar

    
por 04.08.2014 / 12:25