1

我在使用 Intel Fortran 11.1 将 HDF5 库与 Visual Studio 2010 中的解决方案链接时遇到问题。

具体的错误信息是:

error LNK2019: unresolved external symbol _H5F_mp_H5FOPEN_F@24 referenced in function _WRITE_HDF5_ARRAY_2D

这个符号应该在 hdf5_fortran.lib 库中,检查 hdf5_fortran.lib 文件中的符号,我发现它确实包含该符号

00B 0000010A SECT1  notype ()    External     | _H5F_mp_H5FOPEN_F

其他相关信息:我通过检查命令行语句检查了链接器是否正确包含 hdf5_fortran.lib 文件。此外,库文件名拼写错误会报告文件未找到错误。

由于几个历史原因,代码库是使用 /names:as-is 和 /assume:nounderscore 编译的。

现在,如果不是链接符号的专家,_H5F_mp_H5FOPEN_F@ 末尾的“装饰”@4 似乎与定义的符号 _H5F_mp_H5FOPEN_F 冲突,所以显而易见的问题是:我怎样才能摆脱符号中的这个 @4在我的代码中引用,或者还有其他方法可以解决这个问题吗?

4

0 回答 0