Wireshark mailing list archives

First experience with Visual Studio 2019


From: "Maynard, Chris via Wireshark-dev" <wireshark-dev () wireshark org>
Date: Fri, 6 Dec 2019 19:44:15 +0000

In preparation for Wireshark 3.2.0, I installed Visual Studio 2019 today and tried to build Wireshark (yes, from the 
"x64 Native Tools Command Prompt for VS 2019").  The 64-bit build itself succeeded and I was able to run the compiled 
Wireshark.exe with "Help -> About Wireshark" details as follows:


      Version 3.3.0 (v3.3.0rc0-86-gb11640513957)
      Copyright 1998-2019 Gerald Combs <gerald () wireshark org> and contributors. License GPLv2+: GNU GPL version 2 or 
later <https://www.gnu.org/licenses/gpl-2.0.html> This is free software; see the source for copying conditions. There 
is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
      Compiled (64-bit) with Qt 5.12.6, with WinPcap SDK (WpdPack) 4.1.2, with GLib 2.52.3, with zlib 1.2.11, with SMI 
0.4.8, with c-ares 1.14.0, with Lua 5.2.4, with GnuTLS 3.6.3 and PKCS #11 support, with Gcrypt 1.8.3, with MIT 
Kerberos, with MaxMind DB resolver, with nghttp2 1.39.2, with brotli, with LZ4, with Zstandard, with Snappy, with 
libxml2 2.9.9, with QtMultimedia, with AirPcap, with SpeexDSP (using bundled resampler), with SBC, with SpanDSP, with 
bcg729.
      Running on 64-bit Windows 10 (1909), build 18363, with Intel(R) Xeon(R) CPU E3-1505M v5 @ 2.80GHz (with SSE4.2), 
with 16225 MB of physical memory, with locale English_United States.1252, with light display mode, without HiDPI, with 
Npcap version 0.9984, based on libpcap version 1.9.1, with GnuTLS 3.6.3, with Gcrypt 1.8.3, with brotli 1.0.2, with 
AirPcap 4.1.0 build 1622, binary plugins supported (19 loaded). Built using Microsoft Visual Studio 2019 (VC++ 14.24, 
build 28314).

That said, 8 warnings were generated when compiling Wireshark, most related to incremental builds except for the 1 
lemon warning, along with other similar warnings when building the various installers and documentation (see attached). 
 Similar results when compiling for 32-bit (using the "x86 Native Tools Command Prompt for VS 2019", of course).  Since 
we've explicitly set "/INCREMENTAL:NO", I don't think these warnings are necessarily a problem, per se, but it would be 
nice if they could be eliminated.  I don't yet know how to do that though.

Besides the warnings, I noticed other things that I thought I would mention here.  In no particular order:

*       The buildbot is running Cmake 3.14.6 while I'm running 3.15.3.  Should the buildbot be upgraded?

*       If you visit "The latest supported Visual C++ downloads"[1] and download the Visual Studio redistributable 
packages, they are downloaded with names as vc_redist.x86.exe and vc_redist.x64.exe, for the 32-bit and 64-bit 
versions, respectively.  Currently, Wireshark looks for those files as being named vcredist_x86.exe or 
vcredist_x64.exe, as the case may be.  It would seem that for now this is fine as both files are included in the 
installation, but I think it would be a good idea to either switch to searching for the new file names or at least 
search for both in case Microsoft eventually stops including both files.  This would also help find updated versions 
that might be later downloaded by a developer and placed in the wireshark-win[32|64]-libs directories, as it wouldn't 
require the developer to rename the files so Wireshark could find them.

*       I noticed that the merge modules could not be found, so it seems I missed something during the installation of 
VS2019 that doesn't appear to be documented in the Wireshark Developer Guide[2].

      Here was my result:

            -- Using MERGE_MODULE_DIR-NOTFOUND\Microsoft_VC142_CRT_x64.msm for the WiX installer

      vs. that of the buildbot:

            -- Using C:\Program Files (x86)\Microsoft Visual 
Studio\2019\Professional\VC\Redist\MSVC\14.23.27820\MergeModules\Microsoft_VC142_CRT_x64.msm for the WiX installer

      After some searching, I found my answer at the Microsoft Developer Community site[3].  After following their 
advice, I was able to install the merge modules and they were found by Wireshark:

            -- Using C:\Program Files (x86)\Microsoft Visual 
Studio\2019\Community\VC\Redist\MSVC\14.24.28127\MergeModules\Microsoft_VC142_CRT_x64.msm for the WiX installer

      Perhaps this should be mentioned in the Developer Guide[2] when installing Visual Studio 2019, as well as 
mentioning about building the Wix installer too?

*       Speaking of the Developer Guide[2], Qt 5.12.6 is being deployed now, but there are still 2 older versions 
referenced in the guide, namely 5.12.1 (1 instance) and 5.12.5 (2 instances).  Maybe it would be good to replace both 
with 5.12.6 before the 3.2.0 release?

*       Lastly, I noticed that my installation of VS Studio 2019 appears to be slightly newer than the one installed on 
the buildbot, with my installation being C:\Program Files (x86)\Microsoft Visual 
Studio\2019\Community\VC\Redist\MSVC\14.24.28127, while the buildbot has C:\Program Files (x86)\Microsoft Visual 
Studio\2019\Professional\VC\Redist\MSVC\14.23.27820.  Is it worth upgrading the buildbot before the 3.2.0 release?

- Chris
[1]: https://support.microsoft.com/en-us/help/2977003/the-latest-supported-visual-c-downloads
[2]: https://www.wireshark.org/docs/wsdg_html_chunked/ChSetupWin32.html
[3]: 
https://developercommunity.visualstudio.com/content/problem/518683/where-mergemodules-for-1420274040-and-142027508.html














CONFIDENTIALITY NOTICE: This message is the property of International Game Technology PLC and/or its subsidiaries and 
may contain proprietary, confidential or trade secret information. This message is intended solely for the use of the 
addressee. If you are not the intended recipient and have received this message in error, please delete this message 
from your system. Any unauthorized reading, distribution, copying, or other use of this message or its attachments is 
strictly prohibited.

Attachment: VS2019_master_warnings.txt
Description: VS2019_master_warnings.txt

___________________________________________________________________________
Sent via:    Wireshark-dev mailing list <wireshark-dev () wireshark org>
Archives:    https://www.wireshark.org/lists/wireshark-dev
Unsubscribe: https://www.wireshark.org/mailman/options/wireshark-dev
             mailto:wireshark-dev-request () wireshark org?subject=unsubscribe

Current thread: