【发布时间】:2013-12-01 16:06:32
【问题描述】:
我想从使用 Visual Studio 2010 在 Windows 7 上使用 intel fortran 2011 编译的 fortran90 程序创建 HDF5 数据集
我可以使用预构建的二进制文件还是如何构建新的二进制文件
【问题讨论】:
标签: visual-studio-2010 hdf5 intel-fortran
我想从使用 Visual Studio 2010 在 Windows 7 上使用 intel fortran 2011 编译的 fortran90 程序创建 HDF5 数据集
我可以使用预构建的二进制文件还是如何构建新的二进制文件
【问题讨论】:
标签: visual-studio-2010 hdf5 intel-fortran
我从源代码构建,可用的构建二进制文件使用 MS C/C++ 编译器,而我想使用英特尔编译器进行构建,并且它们是使用英特尔 Fortran v12.x 构建的,而我使用的是 v14.x。我不会说你不能使用二进制文件,但过去我已经受够了说服我自己构建的斗争。
我在尝试直接从 VS 构建它们并现在使用 CMake 时也遇到了困难。您的第一步应该是安装 CMake 并弄清楚如何使用它。你不需要太多的工具知识,付出的努力会得到数倍的回报。例如,如果需要,您还可以使用 CMake 构建 Szip 和 Zlib。 CMake 支持提供了越来越多的此类软件,因此您不一定只将它用于 HDF5。例如,我也使用 CMake 为 Windows 构建 VTK。
完成此操作并使用 CMake 生成解决方案/项目文件后,您可以在 VS 中加载解决方案并构建 ALL_BUILD。这通常工作顺利,尽管我发现某些项目需要调整它们的链接,有时我会在发送给编译器的命令行中收到虚假标志。然后,在管理员模式下运行VS,就可以构建伪目标INSTALL。
我看到 HDF5 1.8.12 现已可用,我将下载并构建它,让您知道我的进展情况。
编译和链接
如果您只想使用 HDF5,请包含该行
USE, NON_INTRINSIC :: hdf5
在源文件的适当位置。然后,在Project Properties | Fortran | General | Additional Include Directories 下插入hdf5.mod 位置的路径。这应该让你编译。
要链接,请在Project | Properties | Linker | General | Additional Library Directories 下插入.lib 文件位置的路径。然后,在Project | Properties | Linker | Input | Additional Dependencies 下插入hdf5_fortran.lib。
然后您应该能够编译和链接您的程序。如果您想使用额外的工具,例如 HDF5 表接口,请use h5tb 并找出链接。
并查阅文档。例如,请参阅../HDF5-1.8.12/release_docs/USING_HDF5_VS.txt
【讨论】:
hdf5_fortran.lib 和在文件系统附近的hdf5.mod,以便您可以在源文件中使用use hdf5。您以普通的 VS 方式链接 .lib 文件。
感谢高性能标记,我成功了: 这是我所做的(不确定是否一切都是必要的):
最后
我希望其他人可以使用这个收据。
再次感谢
【讨论】: