Wireshark-dev: [Wireshark-dev] report from the bleeding edge (VS 2017)
From: Ed Beroset <beroset@xxxxxxxxxxxxxx>
Date: Fri, 9 Feb 2018 11:51:45 -0500
On 04/24/2017 01:01 PM, Graham Bloice wrote:

Who knows what will be in the next Visual Studio.  I haven't seen any announcements, but as VS 2017 was only released just over a month ago I don't expect any public announcements yet.

It's possible that future C++ language changes may force them to change the ABI.

I have been working through building an installer package on and for Win64 on Windows 10 using VS 2017 and NSIS 3.03, so I thought I'd send this report from the bleeding edge.

Cylance vs. Cygwin
==================
"BLODA" is the Cygwin acronym for "Big List Of Dodgy Apps" and unfortunately, I have discovered another one, which is Cylance which is anti-malware software (despite both starting with "cy" they have no relationship). For background on that, see https://cygwin.com/faq/faq.html#faq.using.bloda and https://cygwin.com/ml/cygwin/2017-04/msg00319.html

I have been able to work around this by getting my IT folks to whitelist the following cygwin executables:
xterm.exe
git.exe
perl.exe
python2.7.exe

That seems to have been sufficient (so far) to get Wireshark to compile (for building Wireshark, it's probably not necessary to have xterm.exe but I use xterm often and it annoyed me!). Although it's more of a Cygwin than a Wireshark issue, I mention it here in case anyone encounters this problem and does a search.

Specifying platform
===================
I used this command for CMake:

cmake -DENABLE_CHM_GUIDES=on -G "Visual Studio 15 2017 Win64" ..

I found that I had to explicitly specify the platform when using msbuild. For example, to build a Release version on my machine:

msbuild /m /p:Configuration=Release /p:Platform=x64 Wireshark.sln

I don't yet know enough about msbuild or sln files to troubleshoot much further, but that worked for me.

Results
=======
I haven't yet done thorough testing, but the installer, Wireshark and Tshark all seem to be to working correctly.

Hope that helps.

Ed