Windows: unresolved symbol _H5T_STD_I32LE_g

First time caller; long time listener...

I'm trying to build an application on Windows using Visual Studio 2008. I'm linking against the both the hdf5dll.lib and hdf5_hldll.lib libraries but getting the following error at compile time:

hdf5win.obj : error LNK2001: unresolved external symbol _H5T_STD_I32LE_g
Z:\miken\Documents\Visual Studio 2008\Projects\hdf5win\Debug\hdf5win.exe : fatal error LNK1120: 1 unresolved externals

My code is as follows:

int _tmain(int argc, _TCHAR* argv[])
{
  // Create the actual data file
  hid_t fileId = H5Fcreate("test.h5", H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);

  // Create a test group within the datafile
  hid_t groupid = H5Gcreate(fileId, "testgroup1", H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT);

  // Create a dataspace to define the dimensions of the dataset
  hsize_t dims[1] = { 5 };
  hid_t dataspaceid = H5Screate_simple(1, dims, NULL);

  // Create a dataset within the group
  hid_t datasetid = H5Dcreate(groupid, "testdataset1", H5T_STD_I32LE, dataspaceid, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT);

  H5Dclose(datasetid);

  H5Sclose(dataspaceid);

  H5Gclose(groupid);

  H5Fclose(fileId);
  
  return 0;
}

So the linker cannot find the symbol for H5T_STD_I32LE.

Any help anyone can offer is greatly appreciated.

Michael,
  If you are building an application using HDF5 DLLs, check to make sure you've defined the preprocessor definition _HDF5USEDLL_.

Allen

···

First time caller; long time listener...

I'm trying to build an application on Windows using Visual Studio
2008. I'm linking against the both the hdf5dll.lib and hdf5_hldll.lib
libraries but getting the following error at compile time:

hdf5win.obj : error LNK2001: unresolved external symbol _H5T_STD_I32LE_g
Z:\miken\Documents\Visual Studio 2008\Projects\hdf5win\Debug
\hdf5win.exe : fatal error LNK1120: 1 unresolved externals

My code is as follows:

int _tmain(int argc, _TCHAR* argv[])
{
  // Create the actual data file
  hid_t fileId = H5Fcreate("test.h5", H5F_ACC_TRUNC, H5P_DEFAULT,
H5P_DEFAULT);

  // Create a test group within the datafile
  hid_t groupid = H5Gcreate(fileId, "testgroup1", H5P_DEFAULT,
H5P_DEFAULT, H5P_DEFAULT);

  // Create a dataspace to define the dimensions of the dataset
  hsize_t dims[1] = { 5 };
  hid_t dataspaceid = H5Screate_simple(1, dims, NULL);

  // Create a dataset within the group
  hid_t datasetid = H5Dcreate(groupid, "testdataset1", H5T_STD_I32LE,
dataspaceid, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT);

  H5Dclose(datasetid);

  H5Sclose(dataspaceid);

  H5Gclose(groupid);

  H5Fclose(fileId);
  
  return 0;
}

So the linker cannot find the symbol for H5T_STD_I32LE.

Any help anyone can offer is greatly appreciated.