Wireshark-dev: Re: [Wireshark-dev] Wireshark 2.0.1 with VS 2010 EE possible?

From: Graham Bloice <graham.bloice@xxxxxxxxxxxxx>
Date: Tue, 9 Feb 2016 11:59:01 +0000


On 9 February 2016 at 11:43, FIXED-TERM Scholz Tobias (DC-IA/EAI) <fixed-term.Tobias.Scholz@xxxxxxxxxxxxxxx> wrote:
 
Hello,
 
is it possible to set up and compile the Wireshark 2.0.1 building files for Visual Studio 2010 Express Edition on Win7, because it isn’t working on my pc and I can’t fix it.

I'm not sure if anyone is building 2.x with VS2010 these days, it's not officially tested, only with VS2013.  Is there a reason you can't use VS2013?
 
 
All Cygwin packages and other software tools are already successfully installed, because the compilation for Visual Studio 2013 Community works fine. I also installed the extra updates in the correct order, which are mentioned in the Developer Guide within 2.2.3.
 

OK, so your build environment, for VS2013 at least, is sane.
 
When I start the command “cmake -DENABLE_CHM_GUIDES=on -G "Visual Studio 10" ..\wireshark”, I still get two warnings. Listed below you can see the end of the command output within the Visual Studio 2010 Command Line and my .bat-file to prepare the VS2010 Command Line (Opened with admin rights!):
 
 
 
-- The following OPTIONAL packages have been found:
 
* AIRPCAP
* CARES
* GCRYPT (required version >= 1.4.2)
* GEOIP
* GMODULE2
* GNUTLS (required version >= 2.12.0)
* GTK2
* Git
* HtmlViewer
* KERBEROS
* LUA
* PCAP
* POD
* PORTAUDIO
* Perl
* Qt5Core
* Qt5LinguistTools
* Qt5Network (required version >= 5.5.1)
* Qt5Gui (required version >= 5.5.1)
* Qt5Multimedia
* Qt5PrintSupport
* Qt5Svg
* Qt5Widgets
* Qt5WinExtras
* SH
* SMI
* WINSPARKLE
* ZLIB
* LYNX
* SED
* XSLTPROC
* XMLLINT
* ASCIIDOC
* PythonInterp
 
-- The following REQUIRED packages have been found:
 
* PowerShell
* GLIB2
* GTHREAD2
* LEX
* YACC
 
-- The following OPTIONAL packages have not been found:
 
* CAP
* Gettext
* LIBSSH (required version >= 0.6) , libssh is library for ssh connections and it is needed to buil
* M
* PkgConfig
* SBC , SBC Codec for Bluetooth A2DP stream playing , <www: http://git.kernel.org/cgit/bluetooth/sb
c.git>
* SETCAP
* YAPP
* HTMLHelp
 
CMake Warning at C:/ProgramData/chocolatey/lib/cmake.portable.3.4.3/tools/cmake-3.4.3-win32-x86/shar
e/cmake-3.4/Modules/InstallRequiredSystemLibraries.cmake:440 (message):
  system runtime library file does not exist:
  'MSVC10_REDIST_DIR-NOTFOUND/x86/Microsoft.VC100.CRT/msvcp100.dll'
Call Stack (most recent call first):
  cmake/modules/FindMSVC_REDIST.cmake:10 (include)
  CMakeLists.txt:2327 (find_package)
 
 
CMake Warning at C:/ProgramData/chocolatey/lib/cmake.portable.3.4.3/tools/cmake-3.4.3-win32-x86/shar
e/cmake-3.4/Modules/InstallRequiredSystemLibraries.cmake:440 (message):
  system runtime library file does not exist:
  'MSVC10_REDIST_DIR-NOTFOUND/x86/Microsoft.VC100.CRT/msvcr100.dll'
Call Stack (most recent call first):
  cmake/modules/FindMSVC_REDIST.cmake:10 (include)
  CMakeLists.txt:2327 (find_package)
 
 
-- Configuring done
-- Generating done
-- Build files have been written to: D:/Development/wsbuild32_Qt2.0_VS2010
 

VS2010 Express doesn't include the VS Redist files.  See the section on these files in the Developers Guide: https://www.wireshark.org/docs/wsdg_html_chunked/ChToolsMSChain.html#msvc-runtime-redistributable
 
 
###### My .bat file for preparing the VS2010 cmd line #######
@echo off
 
echo Adding things to the path for Wireshark-Qt ...
set CYGWIN=nodosfilewarning
set WIRESHARK_BASE_DIR=D:\Development
set WIRESHARK_TARGET_PLATFORM=win64
set QT5_BASE_DIR=D:\Development\Qt\5.5\msvc2010
set WIRESHARK_VERSION_EXTRA=(TS_QT_PS)
set WIRESHARK_CYGWIN_INSTALL_PATH=C:\Cygwin

The above line is probably not needed, CMake locates Cygwin itself
 
set VisualStudioVersion=10.0
title Command Prompt (VC 2010 x64)
echo Finished path settings ...
echo Preparing build directory ...
mkdir D:\Development\wsbuild32_Qt2.0_VS2010
cd D:\Development\wsbuild32_Qt2.0_VS2010
echo Finished build directory ...
 
goto :eof
######################

Presumably the above batch file is used within a prompt that has already been prepared for use as per the developers guide (https://www.wireshark.org/docs/wsdg_html_chunked/ChSetupWin32.html#ChSetupPrepareCommandCom) ?

 
When I try to start compilation with the command “msbuild /m /p:Configuration=RelWithDebInfo Wireshark.sln”, I get a lot of warnings and errors.

A small sample of the errors may be helpful to diagnose what's wrong, however it may be that due to other factors (e.g. C99 code) VS2010 can no longer be used.

 
Since the compilation for VS2013 has successfully finished, I’m wondering if I made something wrong for VS2010 EE or whether the Express Edition of Visual Studio 2010 is not compatible with this configuration?
 
Thanks in advance.
 
T. Scholz
 




--
Graham Bloice