Huge thanks to our Platinum Members Endace and LiveAction,
and our Silver Member Veeam, for supporting the Wireshark Foundation and project.

Wireshark-dev: Re: [Wireshark-dev] Building latest Wireshark using VS2013

From: Andreas <AndreasSander1@xxxxxxx>
Date: Fri, 23 Dec 2016 09:51:17 +0100
I could "fix" the errors compiling the dissectors. This looks like a bug
in the VS2013 compiler I use. The function add_ipv6_address_teredo has
these lines:

    if (tvb_get_ntohl(tvb, offset) != 0x20010000)
        return;

    guint16 mapped_port = tvb_get_ntohs(tvb, offset + 10) ^ 0xffff;

That's not accepted as a variable definition for 'mapped_port'. I could
make a workaround by changing the condition statement above:


    if (tvb_get_ntohl(tvb, offset) != 0x20010000)
    {    return;    }

I have no idea why the compiler complains or why this helps. I assume
this is a bug with VS2013 Premium Version 12.0.21005.1 REL. The version
of the compiler binary is
Microsoft (R) C/C++ Optimizing Compiler Version 18.00.21005.1 for x64


If I enable detailed MSBUILD logs then I could identify a bit more with
the docbook problem. The detailed error message is

   Der Befehl "LC_ALL" ist entweder falsch geschrieben
   oder konnte nicht gefunden werden.

I assume this command should be executed with bash instead of cmd.exe,
what is the magic how commands are executed by cygwin bash instead of
the windows command processore?
Is it legal to set WIRESHARK_CYGWIN_INSTALL_PATH not pointing to C:\cygwin?
How can I identify what commands are really executed in this build step?

Regards
Andreas