Wireshark-dev: Re: [Wireshark-dev] Current C-Standard used in wireshark
From: Graham Bloice <[email protected]>
Date: Sat, 2 Jan 2016 20:40:38 +0000


On 2 January 2016 at 20:03, Thomas Wiens <[email protected]> wrote:
On 02.01.2016 20:15 Graham Bloice wrote:

> You're definitely missing the asciidoc\docbook bits.  See the bottom of the
> packages list for the Cygwin part of the setup (
> https://www.wireshark.org/docs/wsdg_html_chunked/ChSetupWin32.html#ChSetupCygwin
> ).
>
> Arguably, CMake shouldn't generate the dockbook projects if asciidoc isn't
> found.

Fixed this, also updated the cygwin modules to the newest version.

> I'm keen to get CMake build issues resolved as we'd like to deprecate nmake
> so as to only have to maintain 2 build systems (CMake and autotools).
>
> When you have the asciidoc\docbook Cygwin packages installed, re-run the
> CMake generation step, at the bottom it should list the XSLTPROC, XMLLINT
> and ASCIIDOC OPTIONAL packages as found.
>
> Then can you try to build again, redirecting the msbuild output to a file
> so I can look at the linker errors?

CMake says that the packages are there, msbuild still fails, but with
different exit codes.

I've installed git seperately (not from cygwin) and added the git path
to the path environment variable. As I understand the cmake-logfile,
then it uses some programs (flex, sed, ...) from the git installation
and not from cygwin. Just to mention this if this might be a problem.

On a previous test, I have started the VS GUI and tried to build some
modules seperate to see if it makes any difference, after this the
linker errors occured. Before the latest build I've deleted the
wsbuild32 directory.

What version of Git do you have?  In your case it looks like git bash is being called and isn't able to execute tools\runlex.sh.

I have git version 2.6.4.windows.1 installed, and the only element of that installation on my path is "C:\Program Files\Git\cmd" which doesn't have the extra git msys utilities.  I think this is an option in the git install, however I install git using chocolatey so don't know what options the usual git installer may offer.  The choco install defaults to only gitinstall\cmd, but does have options for GitAndUnixToolsOnPath which adds gitinstall\bin which is what you have according to the build log:

    76>CustomBuild:
         "C:/Program Files (x86)/Git/bin/bash.exe": line 0: "C:/Program Files (x86)/Git/bin/bash.exe": igncr: invalid option name
    76>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppCommon.targets(170,5): error MSB6006: "cmd.exe" wurde mit dem Code 2 beendet. [C:\Development\wsbuild32\ui\ui.vcxproj]
    76>Die Erstellung des Projekts "C:\Development\wsbuild32\ui\ui.vcxproj" ist abgeschlossen (Standardziele) -- FEHLER.

If you have no other reason for the git unix tools, amend your path to only have the gitinstall\cmd directory on it.  If you do need the tools for other tasks, you'll have to fix the path in your Wireshark build shell, yet another reason for a build VM.

--
Graham Bloice