【问题标题】:Installing HDF5 library on Cygwin: "make check" stuck at testswmr.sh, no error message在 Cygwin 上安装 HDF5 库:“make check”卡在 testwmr.sh,没有错误消息
【发布时间】:2017-09-01 10:40:29
【问题描述】:

我目前正在 Cygwin 上安装 HDF5 库,更准确地说是 hdf5-1.10.0-patch1,因为我想将它与 Fortran 一起使用。按照 hdfgroup 网站的说明进行操作 (here is the link),我做了以下事情:

./configure --enable-fortran
make > "out1_check.txt" 2> "warn1_check.txt" &
make check > "out2_check.txt" 2> "warn2_check.txt" &

最后一个命令 (make check) 的执行按原样继续执行,直到卡住。该进程没有停止并且正在发生一些事情(sh.exe 正在使用 8-12% 的 CPU,已经 39 小时的 CPU 时间)但是“out2_check.txt”看起来像

Making check in src
...
[many successful checks]
...
============================
No need to test testlinks_env.sh again.
============================
============================
Testing testswmr.sh

不幸的是,我没有make check 第一次运行的输出文件,但它没有包含有关Testing testswmr.sh 的更多信息。从来没有任何错误消息。

那么,这是什么testswmr.sh,为什么会卡住,我该如何完成安装过程?也许我可以跳过剩下的检查,直接转到make install

重要提示:旧版本的 HDF5 已从 Cygwin 存储库安装。但是它似乎不支持 Fortran,所以我决定自己安装当前版本。

可用的(和使用的)编译器是 gcc 和 gfortran。

【问题讨论】:

  • 您是否尝试查看testswmr.sh 以了解它的作用? (你应该)
  • 嗯,我看了,但我并不太明白 t 详细做了什么。它由几个测试组成,例如“## Writer test - 测试扩展数据集”、“## Remove test - 测试缩小数据集”、“## Sparse writer test - 测试写入数据集中的随机位置”等。

标签: fortran cygwin gfortran hdf5


【解决方案1】:

据我所知,Windows 仅支持 Intel Fortran。 https://support.hdfgroup.org/HDF5/release/obtain518.html 这里没有 Cygwin 下载,我从未遇到过 Cygwin/Fortran/HDF5 的经验报告。

您的选择:

  1. 使用英特尔 Fortran
  2. 使用 Linux 或 Mac

对不起

【讨论】:

  • 感谢@Pierre 的回答!当我看到 Cygwin-repo hdf5 包仅包含 C 时,我还认为 Cygwin Fortran HDF5 不受支持。但是,基于我在上面问题中提到的this instructions file,可以使用 hdf5 的 Unix 源和从 Cygwin 中手动安装它(并且明确提到可以使用 --enable-fortran 标志)。这就是我想要做的。
  • 好的,我现在确实检查了链接的说明 :-) 这仍然是一个几乎没有使用过的组合,但 SWMR 功能(单写多读)取决于文件系统,可能不适用于 FAT 磁盘。我在内存中没有引用,但您应该检查 SWMR 兼容性。如果不支持,则测试失败没有问题,但您不应使用该功能。
  • 谢谢@PierredeBuyl!现在我不需要 SWMR,但我已经设法按原样安装库。使用正确的 $LD_LIBRARY_PATH、$LIBRARY_PATH 和包含标志的值,代码编译并且输出非常好。我解决它的方法:卸载所有内容,重新启动,使用“make check > output_check.dat”,“make install”再次安装;)这可能是防病毒软件或过期的 Windows 更新导致之前停止安装。但是,如果您添加一个注释,说明在 Cygwin 下仍然可以使用 Unix-source 为 Fortran 安装 HDF5,我可以接受您的回答
猜你喜欢
  • 2019-07-02
  • 2016-11-01
  • 2012-05-22
  • 1970-01-01
  • 1970-01-01
  • 2012-02-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多