I'm finally getting to the 64bit installation and having some trouble.
It appears that Microsoft's support for odbc ended with Vista/Windows Server 2008. What libraries are folks attaching to?
Also building a 64-bit pthread has been a problem. I downloaded the latest, and Visual Studio (9) can't seem to make heads or tails of the project. Making one from scratch has its own problems. I found a post saying a pthreads 2.9 was due real soon now with 64 bit support... but that was 3 years ago.
From: email@example.com [mailto:firstname.lastname@example.org] On Behalf Of Dimitris Servis
Sent: Friday, March 19, 2010 1:14 PM
To: HDF Users Discussion List
Subject: Re: [Hdf-forum] Threadsafe Windows & 64-bit
Another point: AFAIK HDF5 does not launch any threads. It only uses some synchronization methods of pthreads. These could very easily be implemented and skip the need for yet another library.
2010/3/19 Dimitris Servis <email@example.com<mailto:firstname.lastname@example.org>>
I compiled pthreads for 64bit almost out of the box. It works fine so far with HDF5. Note that I linked statically in order not to mess with any other library. To make it work, you need to patch pthreads (see below). I also added the following lines in H5TS.c in H5TS_first_thread_init, but that's only for static linking
--- implement.h (revision 19389)
+++ implement.h (revision 19390)
@@ -667,8 +667,12 @@
* See ptw32_InterlockedCompareExchange.c
+#define PTW32_INTERLOCKED_COMPARE_EXCHANGE _InterlockedCompareExchange
#define PTW32_INTERLOCKED_EXCHANGE InterlockedExchange
--- ptw32_InterlockedCompareExchange.c (revision 19389)
+++ ptw32_InterlockedCompareExchange.c (revision 19390)
@@ -34,6 +34,7 @@
* if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
@@ -301,3 +302,5 @@
--- pthread_win32_attach_detach_np.c (revision 19389)
+++ pthread_win32_attach_detach_np.c (revision 19390)
@@ -91,6 +91,14 @@
+ * InterlockedCompareExchange routine in WIN64 is an intrinsic function.
+ * See PTW32_INTERLOCKED_COMPARE_EXCHANGE implement.h
@@ -143,6 +151,7 @@
ptw32_features |= PTW32_SYSTEM_INTERLOCKED_COMPARE_EXCHANGE;
* Load QUSEREX.DLL and try to get address of QueueUserAPCEx
2010/3/19 Mitchell, Scott - IS <Scott.Mitchell@itt.com<mailto:Scott.Mitchell@itt.com>>
I implemented the thread safe version of HDF5 for Windows to get past some issues writing to HDF5 files from different threads. I hoped I didn't need to bother since each thread had exclusive access to one file, but testing proved otherwise.
So the thread-safe option uses PThreads (32 bit). This code will shortly be moving to a 64 bit platform. A quick search didn't turn up a 64 bit variant. Is there a way to implement this in 64 bit?
This e-mail and any files transmitted with it may be proprietary and are intended solely for the use of the individual or entity to whom they are addressed. If you have received this e-mail in error please notify the sender.
Please note that any views or opinions presented in this e-mail are solely those of the author and do not necessarily represent those of ITT Corporation. The recipient should check this e-mail and any attachments for the presence of viruses. ITT accepts no liability for any damage caused by any virus transmitted by this e-mail.
Hdf-forum is for HDF software users discussion.