[zeromq-dev] 0MQ and Windows X65 --- compiled and running using VS2010

Martin Sustrik sustrik at 250bpm.com
Thu Apr 15 07:36:43 CEST 2010


Apps, John wrote:
> Not too long ago, someone asked about compiling 0MQ on Windows X64. With the help of my colleague, Brett Cameron, I have a working version compiled using VS2010 and running on Windows 7 X64.
> Only one minor change was required in atomic_ptr.hpp:
> 
> #if defined ZMQ_ATOMIC_PTR_WINDOWS
> //            return (T*) InterlockedExchangePointer (&ptr, val_);
>             return (T*) InterlockedExchangePointer ((PVOID *) &ptr, val_);
> 
> The change is a quick solution and is not, in my mind, what really should be done. There are a  number of preprocessor statements which equate X86 with X64, thus leading to the use of 32-bit pointers and data types. These should be changed to differentiate between the two machine types.

I've done a little research and afaics casting to void** is the best 
solution. I've patched it in the trunk, however, not having x64 system I 
cannot test it. Let me know whether it's OK now.

Martin



More information about the zeromq-dev mailing list