HDF5-Fortran VS2015 + Intel Fortran 16 on Win10

I’ve successfully built the C++ libs for HDF5 using cmake-gui with VS2015 as generator.

Now I’m trying to build the fortran libs as well using Intel Fortran 16:

  • CMAKE_FORTRAN_COMPILER is pointing to the ifort.exe path
  • HDF5_BUILD_FORTRAN is selected

But I’ve encountered the following error:

CMake Error at config/cmake/HDF5UseFortran.cmake:205 (file):
file failed to open for reading (No such file or directory):

C:/Users/mhalj/Downloads/hdf5-1.12.0/build/pac_fconftest.out
Call Stack (most recent call first):
CMakeLists.txt:956 (include)

It seems that the pac_fconftest.out isnt’ been generated, here is the full output:

Selecting Windows SDK version  to target Windows 10.0.19041.
SOVERSION: 200.0.0
SOVERSION_TOOLS: 200.0.0
SOVERSION_CXX: 200.0.0
SOVERSION_F: 200.0.0
SOVERSION_HL: 200.0.0
SOVERSION_HL_CXX: 200.0.0
SOVERSION_HL_F: 200.0.0
SOVERSION_JAVA: 200.0.0
Checking for InitOnceExecuteOnce:
Warnings Configuration: default:   /DWIN32 /D_WINDOWS /W3 :  /DWIN32 /D_WINDOWS /W3 /GR /EHsc
Generating 'H5Epubgen.h'
Generating 'H5Einit.h'
Generating 'H5Eterm.h'
Generating 'H5Edefin.h'

Generating 'C:/Users/mhalj/Downloads/hdf5-1.12.0/src/H5version.h'

Generating 'H5overflow.h'

Cannot execute TEST flushrefresh - perl not found
The Fortran compiler identification is Intel 16.0.3.20160415
Detecting Fortran compiler ABI info
Detecting Fortran compiler ABI info - done
Determine Intel Fortran Compiler Implicit Link Path
Determine Intel Fortran Compiler Implicit Link Path - done
Check for working Fortran compiler: C:/Program Files (x86)/IntelSWTools/compilers_and_libraries_2016/windows/bin/ia32/ifort.exe - skipped
Checking whether C:/Program Files (x86)/IntelSWTools/compilers_and_libraries_2016/windows/bin/ia32/ifort.exe supports Fortran 90
Checking whether C:/Program Files (x86)/IntelSWTools/compilers_and_libraries_2016/windows/bin/ia32/ifort.exe supports Fortran 90 - yes
Detecting Fortran/C Interface
Detecting Fortran/C Interface - Found GLOBAL and MODULE mangling
Performing Test H5_FORTRAN_HAVE_SIZEOF
Performing Test H5_FORTRAN_HAVE_SIZEOF - Success
Performing Test H5_FORTRAN_HAVE_C_SIZEOF
Performing Test H5_FORTRAN_HAVE_C_SIZEOF - Success
Performing Test H5_FORTRAN_HAVE_STORAGE_SIZE
Performing Test H5_FORTRAN_HAVE_STORAGE_SIZE - Success
Performing Test H5_HAVE_ISO_FORTRAN_ENV
Performing Test H5_HAVE_ISO_FORTRAN_ENV - Success
Performing Test H5_FORTRAN_DEFAULT_REAL_NOT_DOUBLE
Performing Test H5_FORTRAN_DEFAULT_REAL_NOT_DOUBLE - Success
Performing Test H5_FORTRAN_HAVE_ISO_C_BINDING
Performing Test H5_FORTRAN_HAVE_ISO_C_BINDING - Success
Fortran compiler ID is Intel
Performing Test FORTRAN_HAVE_C_LONG_DOUBLE
Performing Test FORTRAN_HAVE_C_LONG_DOUBLE - Success
Performing Test FORTRAN_C_LONG_DOUBLE_IS_UNIQUE
Performing Test FORTRAN_C_LONG_DOUBLE_IS_UNIQUE - Failed
Performing Test FC_AVAIL_KINDS_RESULT
Performing Test FC_AVAIL_KINDS_RESULT - Failed
CMake Error at config/cmake/HDF5UseFortran.cmake:205 (file):
  file failed to open for reading (No such file or directory):

    C:/Users/mhalj/Downloads/hdf5-1.12.0/build/pac_fconftest.out
Call Stack (most recent call first):
  CMakeLists.txt:956 (include)


CMake Error at config/cmake/HDF5UseFortran.cmake:209 (list):
  list GET given empty list
Call Stack (most recent call first):
  CMakeLists.txt:956 (include)


CMake Error at config/cmake/HDF5UseFortran.cmake:210 (list):
  list GET given empty list
Call Stack (most recent call first):
  CMakeLists.txt:956 (include)


CMake Error at config/cmake/HDF5UseFortran.cmake:211 (list):
  list GET given empty list
Call Stack (most recent call first):
  CMakeLists.txt:956 (include)


CMake Error at config/cmake/HDF5UseFortran.cmake:215 (message):
  Failed to find available INTEGER KINDs for Fortran
Call Stack (most recent call first):
  CMakeLists.txt:956 (include)

If more information is needed to solve the problem please ask!

I encountered this when running cmake from the “Developer Command Prompt for Visual Studio 2019” cmd window.

I did not see this problem when running cmake from the “Intel oneAPI command prompt for Intel 64 for Visual Studio 2019” cmd window.