Wireshark-dev: Re: [Wireshark-dev] Win10 CMakeList.txt Error

From: Graham Bloice <graham.bloice@xxxxxxxxxxxxx>
Date: Tue, 15 Mar 2016 15:42:04 +0000
I don't think CMake is the issue, I think you have a couple of unnecessary items in your batch file (WIRESHARK_CYGWIN_INSTALL_PATH and VisualStudioVersion) but these won't be causing the issue.

When the CMake generation step runs, it executes the PowerShell script tools\win-setup.ps1 passing in the following parameters:

  -Destination"${_WS_BASE_DIR}/wireshark-${WIRESHARK_TARGET_PLATFORM}-libs"
  -Platform ${WIRESHARK_TARGET_PLATFORM}
  -VSVersion ${_vsversion_args}

The actual command called is in ${POWERSHELL_COMMAND} which can be found in your build dir CMakeCache.txt, in my case it's

POWERSHELL_COMMAND:STRING=C:/Windows/System32/WindowsPowerShell/v1.0/powershell.exe;-NoProfile;-NonInteractive;-executionpolicy;bypass;.

I suspect their is an issue calling this command, you could try it manually.

In the output of the CMake generation step you should see something like the following (from the x64 buildbot):
-- Generating build using CMake 3.4.3
-- Found POWERSHELL: C:/Windows/System32/WindowsPowerShell/v1.0/powershell.exe  
-- Building for win64 using Visual Studio 12 2013 Win64
Working in C:\buildbot\wireshark\wireshark-master-64\wireshark-win64-libs

Tag 2015-12-11 found. Skipping.
The key bits here are the "Found PowerShell" shows that CMake found PowerShell on your machine and the "working in" and "tag" lines are output from the script.




On 14 March 2016 at 17:07, T. Scholz <scholzt234@xxxxxxxxxxxxxx> wrote:
Well thanks for your help guys, but the problem is still the same ... :(

I checked my CMakeList.txt file and compared it with Pascal's file, but I couldn't find any difference. So I tried all the steps again ad started with the reinstallation of cmake. (Btw. my anti-virus software "Avast" is turned off during those steps, since it blocked my external commands on prompt.)

Here is the output of powershell (admin):
##########
 Extracting cmake-3.5.0-win32-x86\share\cmake-3.5\Templates\Windows\Windows_TemporaryKey.pfx
 Everything is Ok
 Folders: 83
 Files: 4375
 Size:       52802077
 Compressed: 21286287
 C:\ProgramData\chocolatey\lib\cmake.portable\tools
 ShimGen has successfully created a shim for cmake-gui.exe
 ShimGen has successfully created a shim for cmcldeps.exe
 ShimGen has successfully created a shim for cpack.exe
 ShimGen has successfully created a shim for ctest.exe
 The install of cmake.portable was successful.
##############

After that I opened my VS2013 x64 Native prompt as an admin to use my batch file, which contains the following lines:
(I also reinstalled Cygwin to its default Path C:\Cygwin.)
##############
@echo off

echo Adding Environment Vars for Wireshark-Qt ...
set CYGWIN=nodosfilewarning
set WIRESHARK_BASE_DIR=D:\Development
set WIRESHARK_TARGET_PLATFORM=win64
set QT5_BASE_DIR=D:\Development\Qt5.5\5.5\msvc2013_64
set WIRESHARK_VERSION_EXTRA=(x64_TS_PS)
set WIRESHARK_CYGWIN_INSTALL_PATH=C:\Cygwin
set VisualStudioVersion=12.0
title Command Prompt (VS 2013 x64)
echo Finished settings for enironment vars ...
echo Adding new directory for Wireshark x64 ...
mkdir D:\Development\wsbuild64_VS2013
cd D:\Development\wsbuild64_VS2013
echo Ready for preparing VS_Cmd_x64 ...
##############

Next steps was to use the command "cmake -DENABLE_CHM_GUIDES=on -G "Visual Studio 12 Win64" ..\wireshark", which is mentioned at the dev guide. There the following error occurs:
##############
-- Performing Test CXX__w34295_w34189_VALID - Success
statuscheck linker flag - test linker flags: -Wl,--as-needed
-- Performing Test WS_LD_FLAG_VALID0
-- Performing Test WS_LD_FLAG_VALID0 - Failed
statuscheck linker flag - test linker flags: -pie
-- Performing Test WS_LD_FLAG_VALID1
-- Performing Test WS_LD_FLAG_VALID1 - Failed

CMake Error at CMakeLists.txt:758 (add_subdirectory):
  add_subdirectory given source
  "D:/Development/wireshark-win64-libs/zlib-1.2.8-ws" which is not an
  existing directory.


CMake Error at CMakeLists.txt:763 (set_target_properties):
  set_target_properties Can not find target to add properties to: zlib


CMake Error at CMakeLists.txt:765 (set_target_properties):
  set_target_properties Can not find target to add properties to: zlibstatic


-- Packagelist: AIRPCAP;CAP;CARES;GCRYPT;GEOIP;GLIB2;GMODULE2;GNUTLS;GTHREAD2;GTK2;Gettext;Git;HtmlViewer;KERBEROS;LEX;LIBSSH;LUA;M;PCAP;POD;PORTAUDIO;Perl;PythonInterp;Qt5Core;Qt5LinguistTools;Qt5Multimedia;Qt5PrintSupport;Qt5Svg;Qt5Widgets;Qt5WinExtras;SBC;SED;SETCAP;SH;SMI;WINSPARKLE;YACC;YAPP;ZLIB
-- Could NOT find AIRPCAP (missing:  AIRPCAP_INCLUDE_DIR AIRPCAP_LIBRARY)
-- AIRPCAP NOT FOUND
-- Could NOT find PkgConfig (missing:  PKG_CONFIG_EXECUTABLE)
-- Checking for one of the modules 'libcap'
-- Could NOT find CAP (missing:  CAP_LIBRARY CAP_INCLUDE_DIR)
-- CAP NOT FOUND
-- Could NOT find CARES (missing:  CARES_LIBRARY CARES_INCLUDE_DIR)
-- CARES NOT FOUND
-- Could NOT find GCRYPT (missing:  GCRYPT_LIBRARY GCRYPT_INCLUDE_DIR) (Required is at least version "1.4.2")
-- GCRYPT NOT FOUND
-- Could NOT find PkgConfig (missing:  PKG_CONFIG_EXECUTABLE)
-- Checking for one of the modules 'geoip'
-- Could NOT find GEOIP (missing:  GEOIP_LIBRARY GEOIP_INCLUDE_DIR)
-- GEOIP NOT FOUND
-- Could NOT find PkgConfig (missing:  PKG_CONFIG_EXECUTABLE)
-- Checking for one of the modules 'glib-2.0>=2.14.0'
CMake Error at C:/ProgramData/chocolatey/lib/cmake.portable/tools/cmake-3.5.0-win32-x86/share/cmake-3.5/Modules/FindPackageHandleStandardArgs.cmake:148 (message):
  Could NOT find GLIB2 (missing: GLIB2_LIBRARY GLIB2_MAIN_INCLUDE_DIR)
Call Stack (most recent call first):
C:/ProgramData/chocolatey/lib/cmake.portable/tools/cmake-3.5.0-win32-x86/share/cmake-3.5/Modules/FindPackageHandleStandardArgs.cmake:388 (_FPHSA_FAILURE_MESSAGE)
  cmake/modules/FindGLIB2.cmake:90 (find_package_handle_standard_args)
  CMakeLists.txt:829 (find_package)


-- Configuring incomplete, errors occurred!
See also "D:/Development/wsbuild64_VS2013/CMakeFiles/CMakeOutput.log".
See also "D:/Development/wsbuild64_VS2013/CMakeFiles/CMakeError.log".
##############
Also after executing the mentioned cmake command there is no new folder for the lib files at "D:\Development".

So I can't see my failure during those steps....
I don't get it, why the error occurs. Is there a way to download the libs manually, which should be downloaded by cmake?



Am 14.03.2016 um 15:46 schrieb T. Scholz:
The Problem is, that there is no folder at "D:/Development/wireshark-win64-libs". Last time I started CMake for win7 compilation the folder and its content was automatically be downloaded, but right now I don't know how to get the folder with its content by myself.

At which part will it be downloaded? Maybe there Is a failure at this point?

Regards


Am 14.03.2016 um 10:57 schrieb T. Scholz:
Hello everyone,

today I tried to compile Wireshark for my laptop. (win10 - x64) Therefore I just did the same as I did before for win7 compilation mentioned in the dev guide. Right now I'm getting an Error using CMake:

################################
CMake Error at CMakeLists.txt:758 (add_subdirectory):
  add_subdirectory given source
  "D:/Development/wireshark-win64-libs/zlib-1.2.8-ws" which is not an
  existing directory.


CMake Error at CMakeLists.txt:763 (set_target_properties):
  set_target_properties Can not find target to add properties to: zlib


CMake Error at CMakeLists.txt:765 (set_target_properties):
  set_target_properties Can not find target to add properties to: zlibstatic


-- Packagelist: AIRPCAP;CAP;CARES;GCRYPT;GEOIP;GLIB2;GMODULE2;GNUTLS;GTHREAD2;GTK2;Gettext;Git;HtmlViewer;KERBEROS;LEX;LIBSSH;LUA;M;PCAP;POD;PORTAUDIO;Perl;PythonInterp;Qt5Core;Qt5LinguistTools;Qt5Multimedia;Qt5PrintSupport;Qt5Svg;Qt5Widgets;Qt5WinExtras;SBC;SED;SETCAP;SH;SMI;WINSPARKLE;YACC;YAPP;ZLIB
-- Could NOT find AIRPCAP (missing:  AIRPCAP_INCLUDE_DIR AIRPCAP_LIBRARY)
-- AIRPCAP NOT FOUND
-- Could NOT find PkgConfig (missing:  PKG_CONFIG_EXECUTABLE)
-- Checking for one of the modules 'libcap'
-- Could NOT find CAP (missing:  CAP_LIBRARY CAP_INCLUDE_DIR)
-- CAP NOT FOUND
-- Could NOT find CARES (missing:  CARES_LIBRARY CARES_INCLUDE_DIR)
-- CARES NOT FOUND
-- Could NOT find GCRYPT (missing:  GCRYPT_LIBRARY GCRYPT_INCLUDE_DIR) (Required is at least version "1.4.2")
-- GCRYPT NOT FOUND
-- Could NOT find PkgConfig (missing:  PKG_CONFIG_EXECUTABLE)
-- Checking for one of the modules 'geoip'
-- Could NOT find GEOIP (missing:  GEOIP_LIBRARY GEOIP_INCLUDE_DIR)
-- GEOIP NOT FOUND
-- Could NOT find PkgConfig (missing:  PKG_CONFIG_EXECUTABLE)
-- Checking for one of the modules 'glib-2.0>=2.14.0'
CMake Error at C:/ProgramData/chocolatey/lib/cmake.portable/tools/cmake-3.5.0-win32-x86/share/cmake-3.5/Modules/FindPackageHandleStandardArgs.cmake:148 (message):
  Could NOT find GLIB2 (missing: GLIB2_LIBRARY GLIB2_MAIN_INCLUDE_DIR)
Call Stack (most recent call first):
C:/ProgramData/chocolatey/lib/cmake.portable/tools/cmake-3.5.0-win32-x86/share/cmake-3.5/Modules/FindPackageHandleStandardArgs.cmake:388 (_FPHSA_FAILURE_MESSAGE)
  cmake/modules/FindGLIB2.cmake:90 (find_package_handle_standard_args)
  CMakeLists.txt:829 (find_package)


-- Configuring incomplete, errors occurred!
See also "D:/Development/wsbuild64_VS2013/CMakeFiles/CMakeOutput.log".
See also "D:/Development/wsbuild64_VS2013/CMakeFiles/CMakeError.log".
################################

Here is my batch file content:
################################
@echo off

echo Adding Environment Vars for Wireshark-Qt ...
set CYGWIN=nodosfilewarning
set WIRESHARK_BASE_DIR=D:\Development
set WIRESHARK_TARGET_PLATFORM=win64
set QT5_BASE_DIR=D:\Development\Qt5.5\5.5\msvc2013_64
set WIRESHARK_VERSION_EXTRA=(x64_TS_PS)
set WIRESHARK_CYGWIN_INSTALL_PATH=C:\Cygwin
set VisualStudioVersion=12.0
title Command Prompt (VS 2013 x64)
echo Finished settings for enironment vars ...
echo Adding new directory for Wireshark x64 ...
mkdir D:\Development\wsbuild64_VS2013
cd D:\Development\wsbuild64_VS2013
echo Ready for preparing VS_Cmd_x64 ...
################################

Since Zlib is responsible for the error, I checked my Cygwin installation whether it is installed. Looking on the package list of cygwin, "zlib", "zlib-devel" and "zlib0"  v1.2.8.3 are installed.

Is it possible to compile Wireshark for win10 machines or did I just make a simple mistake, which I haven't notieced yet?

Regards

T. Scholz


---
Diese E-Mail wurde von Avast Antivirus-Software auf Viren geprüft.
https://www.avast.com/antivirus



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



--
Graham Bloice
Software Developer
Trihedral UK Limited