pacote R h5r configure: error: não é possível encontrar HDF5

4

Estou tentando instalar o pacote R-pbh-5 para R, que exige h5r . Quando tento instalar o h5r com install_version("h5r", "1.4.7") , recebo o seguinte erro:

[...]
checking for library containing inflate... -lz
checking for library containing H5open... no
configure: error: Can't find HDF5
ERROR: configuration failed for package ‘h5r’

Eu procurei no índice de pacotes do Ubuntu por HDF5 e instalei as bibliotecas libhdf5-10 , libhdf5-dev , hdf5-tools e pbh5tools . Parece estar corretamente instalado também:

$ whereis hdf5
hdf5: /usr/include/hdf5

Eu passei as últimas horas pesquisando, mas não consigo entender o que está perdendo aqui. Algum conselho?

> sessionInfo()
R Under development (unstable) (2018-02-12 r74246)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu 16.04.4 LTS

Matrix products: default
BLAS: /opt/R/3.5.0/lib/R/lib/libRblas.so
LAPACK: /opt/R/3.5.0/lib/R/lib/libRlapack.so

locale:
 [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C               LC_TIME=de_DE.UTF-8        LC_COLLATE=en_US.UTF-8     LC_MONETARY=de_DE.UTF-8    LC_MESSAGES=en_US.UTF-8   
 [7] LC_PAPER=de_DE.UTF-8       LC_NAME=C                  LC_ADDRESS=C               LC_TELEPHONE=C             LC_MEASUREMENT=de_DE.UTF-8 LC_IDENTIFICATION=C       

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

loaded via a namespace (and not attached):
[1] compiler_3.5.0 tools_3.5.0    yaml_2.1.17    Rhdf5lib_1.1.5

Atualização 1:

Seguindo as sugestões nos comentários, consegui dar um passo adiante. Quando eu corro:

R CMD INSTALL h5r_1.4.7.tar.gz --configure-vars="LDFLAGS='-L/usr/lib/x86_64-linux-gnu/hdf5/serial/' CPPFLAGS='-I/usr/include/hdf5/serial'"

Agora recebo o seguinte erro:

-I/usr/include/hdf5/serial
-L/usr/lib/x86_64-linux-gnu/hdf5/serial/
checking for library containing inflate... -lz
checking for library containing H5open... -lhdf5
checking for sufficiently new HDF5... yes
configure: creating ./config.status
config.status: creating src/Makevars
** libs
gcc -std=gnu99 -I/usr/share/R/include -DNDEBUG      -fpic  -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g  -c h5_debug.c -o h5_debug.o
h5_debug.c:4:18: fatal error: hdf5.h: No such file or directory
compilation terminated.
/usr/lib/R/etc/Makeconf:159: recipe for target 'h5_debug.o' failed
make: *** [h5_debug.o] Error 1
ERROR: compilation failed for package ‘h5r’
    
por bgbrink 28.02.2018 / 15:44

1 resposta

0

Consegui fazê-lo, embora de uma forma um pouco confusa. Eu usei sudo cp -rs /usr/include/hdf5/serial/* /usr/share/R/include para criar links para todos os arquivos hdf5 dentro da pasta R/include , que é incluída na construção por padrão.

    
por bgbrink 05.03.2018 / 10:48