[Haskell-cafe] Re: Building network package on Windows

Iavor Diatchki iavor.diatchki at gmail.com
Mon Jun 8 14:04:18 EDT 2009


Hi,
Interesting.  In that case, does anyone have any ideas about the
linker errors?
-Iavor

On Mon, Jun 8, 2009 at 12:42 AM, Thomas ten Cate<ttencate at gmail.com> wrote:
> On Mon, Jun 8, 2009 at 02:04, Iavor Diatchki<iavor.diatchki at gmail.com> wrote:
>> Hello,
>> Here is an update, in case anyone else runs into the same problem.
>>
>> My understanding, is that the problem was caused by a mistake in the
>> "configure" script for the "network" package, which after (correctly)
>> detecting that IPv6 functionality was not available on my platform, it
>> (incorrectly) tried to "gain" this functionality by redefining the
>> version of my platform.  Concretely, apparently I have "Windows Vista
>> Basic Home Edition", which seems to identify itself as version 0x400,
>> while the missing functions are only available on versions of windows
>>>= 0x501.
>
> 0x400 is, if I'm not mistaken, Windows 95. Vista is 0x600 [1]. I don't
> think they *identify* themselves as such; rather, the program itself
> specifies what Windows versions it wants to be able to run on.
>
> In particular, the macros _WIN32_WINNT and WINVER should be defined as
> the *minimum* platform version on which the compiled binary is to
> work. Therefore, if functionality from XP (0x501) is needed, it is
> perfectly okay to redefine these macros to 0x501. This will flip some
> switches in included header files that enable declarations for the
> desired functionality. Of course, the binary will then only run on
> platforms that actually have this functionality.
>
> Hope that clears things up a bit.
>
> Thomas
>
> [1] http://msdn.microsoft.com/en-us/library/aa383745.aspx
>


More information about the Haskell-Cafe mailing list