Wireshark-dev: Re: [Wireshark-dev] Can't build GTK only using CMake on Windows7
From: Graham Bloice <graham.bloice@xxxxxxxxxxxxx>
Date: Wed, 30 Mar 2016 16:44:28 +0100


On 30 March 2016 at 16:12, Robert Cragie <robert.cragie@xxxxxxxxxxxxx> wrote:
I installed the latest Git (x64 version) and cleaned up my path, removing all GNU/Linux like paths on there. This now seems to build OK with one error on building:

CustomBuild:
  Building Custom Rule C:/Users/robcra01/Documents/WiresharkBitbucket/wireshark/docbook/CMakeLists.txt
  CMake does not need to re-run because C:\Users\robcra01\Documents\WiresharkBitbucket\wsbuild\docbook\CMakeFiles\generate.stamp is up-to-date.
  Generating ws.css
  Generating release-notes.html
  running a2x with args --format=xhtml --destination-dir=/cygdrive/c/Users/robcra01/Documents/WiresharkBitbucket/wsbuild/docbook --asciidoc-opts= --fop --stylesheet=ws.css release-notes.asciidoc
  Traceback (most recent call last):
    File "/lib/python2.7/site.py", line 563, in <module>
      main()
    File "/lib/python2.7/site.py", line 545, in main
      known_paths = addusersitepackages(known_paths)
    File "/lib/python2.7/site.py", line 278, in addusersitepackages
      user_site = getusersitepackages()
    File "/lib/python2.7/site.py", line 253, in getusersitepackages
      user_base = getuserbase() # this will also set USER_BASE
    File "/lib/python2.7/site.py", line 243, in getuserbase
      USER_BASE = get_config_var('userbase')
    File "/lib/python2.7/sysconfig.py", line 521, in get_config_var
      return get_config_vars().get(name)
    File "/lib/python2.7/sysconfig.py", line 420, in get_config_vars
      _init_posix(_CONFIG_VARS)
    File "/lib/python2.7/sysconfig.py", line 288, in _init_posix
      raise IOError(msg)
  IOError: invalid Python installation: unable to open //lib/python2.7/config/Makefile (No such file or directory)
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppCommon.targets(170,5): error MSB6006: "cmd.exe" exited with code 1. [C:\Users\robcra01\Documents\WiresharkBitbucket\wsbuild\docbook\release_notes_html.vcxproj]
Done Building Project "C:\Users\robcra01\Documents\WiresharkBitbucket\wsbuild\docbook\release_notes_html.vcxproj" (default targets) -- FAILED.
Done Building Project "C:\Users\robcra01\Documents\WiresharkBitbucket\wsbuild\docbook\release_notes_html.vcxproj.metaproj" (default targets) -- FAILED.


There seems to be something wrong with the python installation in Cygwin.  To build the docbook stuff we use the Cygwin a2x utility that depends on the Cywin python.  There's quite a bit of juggling that goes on here to keep things straight.  I'm not sure what's happening here.
 
There are also quite a few warnings. However, there is a exe in the run/RelWithDebInfo folder which seems to work. What is annoying is that it has now lost the Git information in the name, so it now just says Version 2.1.0-<Custom> (where <custom> is my custom name), whereas before it would say something like Version 2.1.0-<Custom> (v2.1.0rc0-2571-g2066c85 from master). This is critically important when we are doing incremental releases. Can this be put back in?



There shouldn't be any warnings, except if you try to build the pdf docs.  You can check the buildbot output (https://buildbot.wireshark.org/wireshark-master/waterfall) to see what should be produced in a build.

My version, in which I have a custom WIRESHARK_VERSION_EXTRA of "-GMB" shows up as you would like it to, so I'm not sure why yours should be different.  Maybe this has been caused by your change of git and the old (broken) version.h is lying around in your build directory.  Whenever you change fundamental things, I've found it best to delete any existing build directories, create a new one and run the CMake generation step again.

--
Graham Bloice