lizhen-dlut / solfec

Automatically exported from code.google.com/p/solfec
0 stars 0 forks source link

HDF5 compilation #53

Open GoogleCodeExporter opened 8 years ago

GoogleCodeExporter commented 8 years ago
I managed to get it running using this:
HDF5INC = -I/usr/include -I/usr/lib/openmpi/include
HDF5LIB = -L/usr/lib -lhdf5 -lhdf5_hl -L/usr/lib/openmpi/lib -lmpi
(although see note below)

However I got errors as follows when compiling pbf.c:
pbf.c:39: error: too many arguments to function 'H5Gopen1'
pbf.c:41: error: too many arguments to function 'H5Gcreate1'
and the same for other lines.

After having a look at /usr/include/H5version.h it looks there is a 
H5Gopen_vers pre-processor option (or whatever you call it) which swaps between 
H5Gopen1 and H5Gopen2 and likewise for H5Gcreate1 and H5Gcreate2.
The ..2 versions look correct for your code but it looks like their HDF library 
has been complied so it defines the ...1 versions.

So I just modified the calls in pbf.c to 'H5Gopen1' and 'H5Gcreate1' to remove 
H5P_DEFAULT where passed.

That seems to work, i.e. it compiles and runs balls.py OK.

Original issue reported on code.google.com by t.kozi...@gmail.com on 15 Oct 2013 at 4:25

GoogleCodeExporter commented 8 years ago
This looks like HDF5 installation issue on your system. *1 functions are 
"deprecated". Fixing this on the Solfec side (e.g. checking for HDF version) 
would probably not be a very elegant way of sorting this out. Let me know 
whether you are able to install HDF5 that supports *2 functions.

Original comment by t.kozi...@gmail.com on 8 Jun 2014 at 6:06