Boost logo

Boost Users :

Subject: Re: [Boost-users] [Interprocess] Trying to include unistd.h on Windows?
From: Ion Gaztañaga (igaztanaga_at_[hidden])
Date: 2009-02-28 12:58:09


Derek Kivi wrote:
> We are using the Interprocess library to make use of shared memory
> within our code. We are experiencing the following problem when building
> on Windows.
>
> Some of our projects are trying to include unistd.h from workaround.hpp.
> It looks like this happens if BOOST_WINDOWS is not defined.
>
> Tracing back through the header files I pieced together that
> BOOST_WINDOWS is not defined if BOOST_DISABLE_WIN32 is defined
> (win32.hpp). And BOOST_DISABLE_WIN32 gets defined if _MSC_EXTENSIONS is
> not defined (visualc.hpp).
>
>>From the MSDN documentation, _MSC_EXTENSIONS is not defined if the
> Visual C++ Language Extensions are turned off, which in fact they are
> for these projects.
>
> Has anyone else seen this and is there a workaround for getting Boost
> Interprocess to work on Windows in cases where the Visual C++ Language
> Extensions are turned off?

sorry, for the really long delay. I've done some experiments and
Interprocess can't be compiled without extensions because depends on
Boost.DateTime which also needs them and because accesses to the windows
API (and __cdecl and similar extensions are used in winapi declarations)
require them. I haven't dedicated much time to this issue, but I have
the impression that is not trivial to solve. Any help is appreciated.

> Thanks,
> Derek

Regards,

Ion


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net