爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 1419|回复: 6

安装hdf5出现问题

[复制链接]

新浪微博达人勋

发表于 2023-9-20 13:36:53 | 显示全部楼层 |阅读模式
20金钱
问题如下:
../libtool: line 7486: cd: public2/software/zlib/zlib-1.2.7-intel/lib: No such file or directory
libtool:   error: cannot determine absolute directory name of 'public2/software/zlib/zlib-1.2.7-intel/lib'
make[2]: *** [H5make_libsettings] 错误 1
make[2]: 离开目录“/public2/users/lwang1/MetOffice/build/hdf5-1.10.1/src”
make[1]: *** [all] 错误 2
make[1]: 离开目录“/public2/users/lwang1/MetOffice/build/hdf5-1.10.1/src”
make: *** [all-recursive] 错误 1
problem with hdf5 make


我的zlib绝对路径是/public2/software/zlib/zlib-1.2.7-intel/lib
但是脚本报错,它是少了一个斜杠/。

但是安装hdf5的脚本是NWP SAF给的自动安装脚本,并没有需要修改路径的地方:
以下是脚本内容:
item=$1
[ $item ] || { usage; exit 1; }

AAPP_VERSION=8.11           #to correspond with the name of the AAPP tar file
FORTRAN_COMPILER=ifort   #gfortran, ifort (or pgf90 if you are not building OPS-LRS)
STATION=exeter    #change as required
SITE_ID=UKM       #change as required
NTHREADS=20  #for OPS-LRS. Depends on the number of cores you have available,
            #but aim for a multiple of 4 if possible. It can be changed later,
            #by editing OPS-LRS-run/OPS/conf/OPS_SD.cfg

TOP=$PWD
TAR=$TOP/tarfiles
BUILD=$TOP/build
INSTALL=$TOP/install

mkdir -p $TAR $BUILD $INSTALL

HDF5_INSTALL_DIR=$INSTALL/hdf5
BUFRDC_INSTALL_DIR=$INSTALL/bufrdc
ECCODES_INSTALL_DIR=$INSTALL/eccodes
AAPP_INSTALL_DIR=$INSTALL/AAPP_$AAPP_VERSION
OPSLRS_EXT_INSTALL_DIR=$INSTALL/opslrs
OPSLRS_INSTALL_DIR=$INSTALL/opslrs
KAI_INSTALL_DIR=$INSTALL/kai

mkdir -p $HDF5_INSTALL_DIR $BUFRDC_INSTALL_DIR $ECCODES_INSTALL_DIR
mkdir -p $OPSLRS_EXT_INSTALL_DIR $OPSLRS_INSTALL_DIR $AAPP_INSTALL_DIR $KAI_INSTALL_DIR


##############HDF5 version 1.10.1

if [ $item = 1 ]; then

  cd $TAR
  tarfile=hdf5-1.10.1.tar.gz
  url="https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-1.10/hdf5-1.10.1/src/"
  [ -s $tarfile ] || { echo "Downloading HDF5"; wget ${url}${tarfile}; }
  [ -s $tarfile ] || { echo "Failed to download $tarfile"; exit 1; }

  cd $BUILD
  dir=${tarfile%.tar.gz}
  [ -d $dir ] || { echo "unpacking HDF5"; tar -xzf $TAR/$tarfile; }

  cd $dir
  export FC=$FORTRAN_COMPILER
  mkdir -p $HDF5_INSTALL_DIR

  ./configure --prefix=$HDF5_INSTALL_DIR --enable-fortran || { echo "problem with hdf5 configure"; exit 1; }
  make || { echo "problem with hdf5 make"; exit 1; }
  make install || { echo "problem with hdf5 make install"; exit 1; }
  echo "Finished hdf5 build"

fi

密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2023-9-20 15:46:11 | 显示全部楼层
本帖最后由 weilin421 于 2023-9-20 15:49 编辑

你可以试试 命令行敲入 export public2='/public2'是这意思吧少个/,然后再用这个终端尝试编译看看能过么。哦不行,设了变量还得加$符引用,我想想还有别的辙么。
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

发表于 2023-9-20 15:55:23 | 显示全部楼层
你zlib路径是怎么输入给脚本的呢,是通过参数么,还是写在编译脚本里了,我印象里hdf5自己手动configure编译也不是很困难,加几个参数就行了,不行下个tar包自己configure make make install编译吧。
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2023-9-21 07:48:12 | 显示全部楼层
weilin421 发表于 2023-9-20 15:55
你zlib路径是怎么输入给脚本的呢,是通过参数么,还是写在编译脚本里了,我印象里hdf5自己手动configure编 ...

它这个是自动脚本,编译的时候自己关联其他文件检测zlib路径的吧,但是这个自动脚本没有具体输入zlib路径的代码,所以不知道怎么办
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

发表于 2023-9-21 13:18:23 | 显示全部楼层
那就去改脚本,直接指定zlib
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2023-9-22 11:02:02 | 显示全部楼层
weilin421 发表于 2023-9-20 15:46
你可以试试 命令行敲入 export public2='/public2'是这意思吧少个/,然后再用这个终端尝试编译看看能过么。 ...

问题找到了,在~/.bashrc里面输出的时候,使用绝对路径不能加$,非常抱歉
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2023-9-22 11:04:30 | 显示全部楼层
Lancelot 发表于 2023-9-21 13:18
那就去改脚本,直接指定zlib

问题找到了,在~/.bashrc里面输出的时候,使用绝对路径不能加$,非常抱歉
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表