Error to compile the example file in intel fortran

I was able to compile the C example file using VS2013. So far I need to use fortran api , I succeeded to compile the fortran example to obj file.
However there are problems with link command.

Following is my command :

link /nologo /release /out:“h5.exe” “h5.obj” “c:\Program Files\HDF_Group\HDF5\HDF5-1.10.1-win64\lib\libzlib.lib” “c:\Program Files\HDF_Group\HDF5\HDF5-1.10.1-win64\lib\libszip.lib” “c:\Program Files\HDF_Group\HDF5\HDF5-1.10.1-win64\lib\libhdf5.lib” “d:\OneDrive\Temp\CutHalfLoop\Newway_move_brackets\test_hdf5_fortran\libhdf5_fortran.lib” “c:\Program Files\HDF_Group\HDF5\HDF5-1.10.1-win64\lib\libhdf5_hl.lib” “c:\Program Files\HDF_Group\HDF5\HDF5-1.10.1-win64\lib\libhdf5_hl_fortran.lib” /SUBSYSTEM:CONSOLE /NODEFAULTLIB:MSVCRT.lib

Then I got errors as following
libhdf5.lib(H5.obj) : warning LNK4217: locally defined symbol isalpha imported in function H5_debug_mask
libhdf5.lib(H5system.obj) : warning LNK4217: locally defined symbol isalpha imported in function H5_build_extpath
libhdf5.lib(H5Ztrans.obj) : warning LNK4217: locally defined symbol isalpha imported in function H5Z_xform_find_type
libhdf5.lib(H5Lexternal.obj) : warning LNK4217: locally defined symbol isalpha imported in function H5L_extern_traverse
libhdf5.lib(H5.obj) : warning LNK4217: locally defined symbol isdigit imported in function H5_debug_mask
libhdf5.lib(H5system.obj) : warning LNK4217: locally defined symbol isdigit imported in function H5_build_extpath
libhdf5.lib(H5Ztrans.obj) : warning LNK4049: locally defined symbol isdigit imported
libhdf5.lib(H5Omtime.obj) : warning LNK4217: locally defined symbol isdigit imported in function H5O_mtime_new_decode
libhdf5.lib(H5HFdblock.obj) : warning LNK4217: locally defined symbol __iob_func imported in function H5HF_man_dblock_create
libhdf5.lib(H5Cdbg.obj) : warning LNK4049: locally defined symbol __iob_func imported
libhdf5.lib(H5Gbtree2.obj) : warning LNK4049: locally defined symbol __iob_func imported
libhdf5.lib(H5.obj) : warning LNK4217: locally defined symbol __iob_func imported in function H5_debug_mask
libhdf5.lib(H5Eint.obj) : warning LNK4049: locally defined symbol __iob_func imported
libhdf5.lib(H5C.obj) : warning LNK4049: locally defined symbol __iob_func imported
libhdf5.lib(H5HF.obj) : warning LNK4217: locally defined symbol __iob_func imported in function H5HF_create
libhdf5.lib(H5.obj) : warning LNK4217: locally defined symbol fclose imported in function H5_debug_mask
libhdf5.lib(H5Clog.obj) : warning LNK4049: locally defined symbol fclose imported
libhdf5.lib(H5ACdbg.obj) : warning LNK4217: locally defined symbol fclose imported in function H5AC__close_trace_file
libhdf5.lib(H5Oname.obj) : warning LNK4049: locally defined symbol fprintf imported
libhdf5.lib(H5Tdbg.obj) : warning LNK4217: locally defined symbol fprintf imported in function H5T_debug
libhdf5.lib(H5Gnode.obj) : warning LNK4217: locally defined symbol fprintf imported in function H5G_node_debug
libhdf5.lib(H5Sdbg.obj) : warning LNK4049: locally defined symbol fprintf imported
libhdf5.lib(H5.obj) : warning LNK4217: locally defined symbol fprintf imported in function H5_debug_mask
libhdf5.lib(H5Eint.obj) : warning LNK4049: locally defined symbol fprintf imported
libhdf5.lib(H5system.obj) : warning LNK4217: locally defined symbol fprintf imported in function H5_make_time
libhdf5.lib(H5Ofill.obj) : warning LNK4049: locally defined symbol fprintf imported
libhdf5.lib(H5Dbtree2.obj) : warning LNK4049: locally defined symbol fputs imported
libhdf5.lib(H5.obj) : warning LNK4217: locally defined symbol fputs imported in function H5check_version
libhdf5.lib(H5system.obj) : warning LNK4217: locally defined symbol fputs imported in function H5_make_time
libhdf5.lib(H5Dchunk.obj) : warning LNK4049: locally defined symbol fputs imported
libhdf5.lib(H5Dbtree.obj) : warning LNK4049: locally defined symbol fputs imported
libhdf5.lib(H5FAtest.obj) : warning LNK4049: locally defined symbol sprintf imported
libhdf5.lib(H5timer.obj) : warning LNK4049: locally defined symbol sprintf imported
libhdf5.lib(H5Dearray.obj) : warning LNK4049: locally defined symbol sprintf imported
libhdf5.lib(H5Dfarray.obj) : warning LNK4049: locally defined symbol sprintf imported
libhdf5.lib(H5EAtest.obj) : warning LNK4049: locally defined symbol sprintf imported
libhdf5.lib(H5.obj) : warning LNK4217: locally defined symbol sprintf imported in function H5_term_library
libhdf5.lib(H5PL.obj) : warning LNK4217: locally defined symbol sprintf imported in function H5PL__open
libhdf5.lib(H5Odtype.obj) : warning LNK4049: locally defined symbol sprintf imported
libhdf5.lib(H5Omtime.obj) : warning LNK4049: locally defined symbol sprintf imported
libhdf5.lib(H5.obj) : warning LNK4217: locally defined symbol abort imported in function H5check_version
libhdf5.lib(H5Tbit.obj) : warning LNK4049: locally defined symbol abort imported
libhdf5.lib(H5B.obj) : warning LNK4217: locally defined symbol abort imported in function H5B__insert_helper
libhdf5.lib(H5Lexternal.obj) : warning LNK4049: locally defined symbol getenv imported
libhdf5.lib(H5.obj) : warning LNK4217: locally defined symbol getenv imported in function H5_init_library
libhdf5.lib(H5Dint.obj) : warning LNK4049: locally defined symbol getenv imported
libhdf5.lib(H5PL.obj) : warning LNK4049: locally defined symbol getenv imported
libhdf5.lib(H5Fint.obj) : warning LNK4049: locally defined symbol getenv imported
libhdf5.lib(H5.obj) : warning LNK4217: locally defined symbol strtol imported in function H5_debug_mask
libhdf5.lib(H5system.obj) : warning LNK4217: locally defined symbol strtol imported in function H5_build_extpath
libhdf5.lib(H5Tconv.obj) : warning LNK4049: locally defined symbol free imported
libzlib.lib(zutil.obj) : warning LNK4049: locally defined symbol free imported
libszip.lib(sz_api.obj) : warning LNK4049: locally defined symbol free imported
libszip.lib(rice.obj) : warning LNK4049: locally defined symbol free imported
libhdf5.lib(H5Dvirtual.obj) : warning LNK4049: locally defined symbol free imported
libhdf5.lib(H5Oattribute.obj) : warning LNK4217: locally defined symbol free imported in function H5O_attr_bh_info
libhdf5.lib(H5Ocopy.obj) : warning LNK4217: locally defined symbol free imported in function H5O_copy_header
libhdf5.lib(H5HG.obj) : warning LNK4217: locally defined symbol free imported in function H5HG_create
libhdf5.lib(H5.obj) : warning LNK4217: locally defined symbol free imported in function H5_term_library
libhdf5.lib(H5FL.obj) : warning LNK4049: locally defined symbol free imported
libhdf5.lib(H5MM.obj) : warning LNK4049: locally defined symbol free imported
libhdf5.lib(H5Tvlen.obj) : warning LNK4217: locally defined symbol free imported in function H5T__vlen_create
libhdf5.lib(H5.obj) : warning LNK4217: locally defined symbol strncat imported in function H5check_version
libhdf5.lib(H5system.obj) : warning LNK4049: locally defined symbol strncat imported
libhdf5.lib(H5Gname.obj) : warning LNK4217: locally defined symbol strncat imported in function H5G_build_fullpath
libhdf5.lib(H5Gstab.obj) : warning LNK4049: locally defined symbol strncpy imported
libhdf5.lib(H5Gcompact.obj) : warning LNK4217: locally defined symbol strncpy imported in function H5G__compact_get_name_by_idx
libhdf5.lib(H5Gdense.obj) : warning LNK4049: locally defined symbol strncpy imported
libhdf5.lib(H5Cdbg.obj) : warning LNK4049: locally defined symbol strncpy imported
libhdf5.lib(H5Gint.obj) : warning LNK4049: locally defined symbol strncpy imported
libhdf5.lib(H5RS.obj) : warning LNK4049: locally defined symbol strncpy imported
libhdf5.lib(H5Lexternal.obj) : warning LNK4049: locally defined symbol strncpy imported
libhdf5.lib(H5FDsec2.obj) : warning LNK4049: locally defined symbol strncpy imported
libhdf5.lib(H5Pocpl.obj) : warning LNK4049: locally defined symbol strncpy imported
libhdf5.lib(H5Plapl.obj) : warning LNK4049: locally defined symbol strncpy imported
libhdf5.lib(H5Pfapl.obj) : warning LNK4049: locally defined symbol strncpy imported
libhdf5.lib(H5Pencdec.obj) : warning LNK4217: locally defined symbol strncpy imported in function H5P__decode_double
libhdf5.lib(H5Gname.obj) : warning LNK4049: locally defined symbol strncpy imported
libhdf5.lib(H5Pdcpl.obj) : warning LNK4217: locally defined symbol strncpy imported in function H5P_get_fill_value
libhdf5.lib(H5Opline.obj) : warning LNK4049: locally defined symbol strncpy imported
libhdf5.lib(H5Dvirtual.obj) : warning LNK4049: locally defined symbol strncpy imported
libhdf5.lib(H5L.obj) : warning LNK4049: locally defined symbol strncpy imported
libhdf5.lib(H5PL.obj) : warning LNK4049: locally defined symbol strncpy imported
libhdf5.lib(H5T.obj) : warning LNK4049: locally defined symbol strncpy imported
libhdf5.lib(H5Fint.obj) : warning LNK4217: locally defined symbol strncpy imported in function H5F_get_id
libhdf5.lib(H5system.obj) : warning LNK4049: locally defined symbol strncpy imported
libhdf5.lib(H5A.obj) : warning LNK4049: locally defined symbol strncpy imported
libhdf5.lib(H5E.obj) : warning LNK4049: locally defined symbol strncpy imported
libhdf5.lib(H5F.obj) : warning LNK4049: locally defined symbol strncpy imported
libhdf5.lib(H5Eint.obj) : warning LNK4217: locally defined symbol strncpy imported in function H5E_get_msg
libhdf5.lib(H5Pdxpl.obj) : warning LNK4049: locally defined symbol strncpy imported
libhdf5.lib(H5Gloc.obj) : warning LNK4049: locally defined symbol strncpy imported
libhdf5.lib(H5Pdapl.obj) : warning LNK4049: locally defined symbol strncpy imported
libhdf5.lib(H5Dint.obj) : warning LNK4217: locally defined symbol strncmp imported in function H5D_build_extfile_prefix
libhdf5.lib(H5FD.obj) : warning LNK4049: locally defined symbol strncmp imported
libhdf5.lib(H5Gname.obj) : warning LNK4049: locally defined symbol strncmp imported
libhdf5.lib(H5Lexternal.obj) : warning LNK4049: locally defined symbol strchr imported
libhdf5.lib(H5Pint.obj) : warning LNK4217: locally defined symbol strchr imported in function H5P_open_class_path
libhdf5.lib(H5system.obj) : warning LNK4049: locally defined symbol strchr imported
libhdf5.lib(H5L.obj) : warning LNK4049: locally defined symbol strchr imported
libhdf5.lib(H5Dvirtual.obj) : warning LNK4049: locally defined symbol strchr imported
libhdf5.lib(H5system.obj) : warning LNK4217: locally defined symbol _vsnprintf_s imported in function c99_snprintf
libhdf5.lib(H5system.obj) : warning LNK4217: locally defined symbol _vscprintf imported in function c99_snprintf
libhdf5.lib(H5system.obj) : warning LNK4217: locally defined symbol getenv_s imported in function Wsetenv
libhdf5.lib(H5system.obj) : warning LNK4217: locally defined symbol strrchr imported in function H5_build_extpath
libhdf5.lib(H5Lexternal.obj) : warning LNK4217: locally defined symbol strrchr imported in function H5L_extern_traverse
libhdf5.lib(H5B2leaf.obj) : warning LNK4049: locally defined symbol memmove imported
libhdf5.lib(H5HFsection.obj) : warning LNK4049: locally defined symbol memmove imported
libhdf5.lib(H5Dearray.obj) : warning LNK4217: locally defined symbol memmove imported in function H5D__earray_fill
libhdf5.lib(H5B.obj) : warning LNK4049: locally defined symbol memmove imported
libhdf5.lib(H5Fcwfs.obj) : warning LNK4049: locally defined symbol memmove imported
libhdf5.lib(H5B2int.obj) : warning LNK4049: locally defined symbol memmove imported
libhdf5.lib(H5HG.obj) : warning LNK4049: locally defined symbol memmove imported
libhdf5.lib(H5Tconv.obj) : warning LNK4049: locally defined symbol memmove imported
libhdf5.lib(H5Gnode.obj) : warning LNK4217: locally defined symbol memmove imported in function H5G_node_insert
libhdf5.lib(H5Dscatgath.obj) : warning LNK4049: locally defined symbol memmove imported
libhdf5.lib(H5C.obj) : warning LNK4049: locally defined symbol memmove imported
libhdf5.lib(H5Oalloc.obj) : warning LNK4049: locally defined symbol memmove imported
libhdf5.lib(H5Fmount.obj) : warning LNK4049: locally defined symbol memmove imported
libhdf5.lib(H5Faccum.obj) : warning LNK4049: locally defined symbol memmove imported
libhdf5.lib(H5L.obj) : warning LNK4217: locally defined symbol memmove imported in function H5L_unregister
libhdf5.lib(H5T.obj) : warning LNK4049: locally defined symbol memmove imported
libhdf5.lib(H5Z.obj) : warning LNK4217: locally defined symbol memmove imported in function H5Z_unregister
libhdf5.lib(H5Dcontig.obj) : warning LNK4049: locally defined symbol memmove imported
libhdf5.lib(H5PL.obj) : warning LNK4217: locally defined symbol strtok imported in function H5PL__init_path_table
libhdf5.lib(H5MM.obj) : warning LNK4217: locally defined symbol calloc imported in function H5MM_calloc
libszip.lib(rice.obj) : warning LNK4049: locally defined symbol malloc imported
libhdf5.lib(H5MM.obj) : warning LNK4217: locally defined symbol malloc imported in function H5MM_malloc

Please help! I use compile from source hdf5 ver HDF5-1.10.1-win64 with fortran static library.
Thank you~

Your link line is missing the fortran cstub libs.

Allen

Thank you very much!
I recompiled as you said :slight_smile:link /nologo /release /out:“h5.exe” “h5.obj” “c:\Program Files\HDF_Group\HDF5\HDF5-1.10.1-win64\lib\libhdf5_hl_f90cstub.lib” “c:\Program Files\HDF_Group\HDF5\HDF5-1.10.1-win64\lib\libzlib.lib” “c:\Program Files\HDF_Group\HDF5\HDF5-1.10.1-win64\lib\libszip.lib” “c:\Program Files\HDF_Group\HDF5\HDF5-1.10.1-win64\lib\libhdf5.lib” “c:\Program Files\HDF_Group\HDF5\HDF5-1.10.1-win64\lib\libhdf5_fortran.lib” “c:\Program Files\HDF_Group\HDF5\HDF5-1.10.1-win64\lib\libhdf5_hl.lib” “c:\Program Files\HDF_Group\HDF5\HDF5-1.10.1-win64\lib\libhdf5_hl_fortran.lib” /SUBSYSTEM:CONSOLE /NODEFAULTLIB:MSVCRT.lib

But till there are errors:
libhdf5.lib(H5.obj) : warning LNK4217: locally defined symbol isalpha imported in function H5_debug_mask
libhdf5.lib(H5system.obj) : warning LNK4217: locally defined symbol isalpha imported in function H5_build_extpath
libhdf5.lib(H5Ztrans.obj) : warning LNK4217: locally defined symbol isalpha imported in function H5Z_xform_find_type
libhdf5.lib(H5Lexternal.obj) : warning LNK4217: locally defined symbol isalpha imported in function H5L_extern_traverse
libhdf5.lib(H5.obj) : warning LNK4217: locally defined symbol isdigit imported in function H5_debug_mask

libhdf5.lib(H5FDsec2.obj) : error LNK2019: unresolved external symbol __imp__fstat64 referenced in function H5FD_sec2_open
OLDNAMES.lib(timezone.obi) : error LNK2001: unresolved external symbol __imp__timezone

h5.exe : fatal error LNK1120: 97 unresolved externals

Please give me advice!

I think those are system library functions that you also need on the link line; math library is one.

Allen