Hi Rob,

- I'm not sure what to make of the timezone struct. Can you send me the 
src/H5pubconf.h that is generated by configure and your configure output? I'd 
like to see what MinGW thinks you have.

- Those problematic files in tests were designed for POSIX and assume the 
presence of fork(), pid_t, etc. Since they are only built by the autotools, our 
testing suite never flagged a problem since we only support Windows under CMake 
and don't support MinGW. In the grand scheme of things, they aren't important. 
The atomic writer and reader programs are for testing new file systems for SWMR 
and the others are programs that are invoked by a shell script that tests a few 
SWMR use cases. I'll try to have a MinGW bypass for the 1.10.0 release for all 
of them.

Cheers,

Dana

-----Original Message-----
From: Hdf-forum [mailto:[email protected]] On Behalf Of 
[email protected]
Sent: Friday, March 25, 2016 8:09 AM
To: [email protected]
Subject: Re: [Hdf-forum] Release of HDF5-1.10.0-pre2

-----Original Message----- 
From: [email protected]
Sent: Thursday, March 24, 2016 5:45 AM
To: [email protected]
Subject: [Hdf-forum] Release of HDF5-1.10.0-pre2


> Release of HDF5-1.10.0-pre2

On Windows 7, (mingw-w64 port of) gcc-4.9.2, building in msys shell using 
autotools.
I start with:

$ ./configure --disable-shared --enable-static CFLAGS=-DH5_HAVE_WIN32_API 
CPPFLAGS=-IC:/_32/msys_492/1.0/local/include 
LDFLAGS=-LC:/_32/msys_492/1.0/local/lib --prefix=C:/_32/msys_492/1.0/local

That seems to go ok, but 'make' fails early on with:

##################
  CC       H5.lo
In file included from H5private.h:609:0,
                 from H5.c:24:
H5win32defs.h:70:8: error: redefinition of 'struct timezone'
struct timezone {
        ^
In file included from 
c:/_32/gcc-straw-492/i686-w64-mingw32/include/sys/time.h:10:0,
                 from H5private.h:106,
                 from H5.c:24:
c:/_32/gcc-straw-492/i686-w64-mingw32/include/time.h:250:8: note: originally 
defined here
struct timezone {
        ^
##################

I work around that by removing the redefinition of struct timezone from 
H5win32defs.h.
That allows 'make' to succeed until we get to the attempt to build 
test/twriteorder.exe:

##################
  CC       twriteorder.o
  CCLD     twriteorder.exe
twriteorder.o:twriteorder.c:(.text+0x8e8): undefined reference to `fork'
twriteorder.o:twriteorder.c:(.text+0xa0a): undefined reference to `waitpid'
twriteorder.o:twriteorder.c:(.text+0xa37): undefined reference to 
`WIFEXITED'
twriteorder.o:twriteorder.c:(.text+0xa47): undefined reference to 
`WEXITSTATUS'
collect2.exe: error: ld returned 1 exit status
make[1]: *** [twriteorder.exe] Error 1
make[1]: Leaving directory `/c/_32/comp/hdf5-1.10.0-pre2/test'
make: *** [all-recursive] Error 1
##################

This is the same as occurred in hdf5-1.10.0-pre1.
I don't know how to fix that, so I rewrote twriteorder.c to do nothing other 
than print "All skipped" and return 0.

That allows 'make' to proceed further, until we start hitting the test files 
that #include test/use.h (eg atomic_writer.c, use_append_chunk.c and 
use_common.c).
The problem with use.h is that it wants to #include the non-existent 
sys/wait.h.

Commenting out the inclusion of sys/wait.h does allow atomic_writer.exe to 
be built, but the attempt to build use_append_chunk.exe then fails with the 
same "undefined reference" errors that afflict twriteorder.

Cheers,
Rob


_______________________________________________
Hdf-forum is for HDF software users discussion.
[email protected]
http://lists.hdfgroup.org/mailman/listinfo/hdf-forum_lists.hdfgroup.org
Twitter: https://twitter.com/hdf5

_______________________________________________
Hdf-forum is for HDF software users discussion.
[email protected]
http://lists.hdfgroup.org/mailman/listinfo/hdf-forum_lists.hdfgroup.org
Twitter: https://twitter.com/hdf5

Reply via email to