Wireshark mailing list archives

Re: Building on Windows


From: Graham Bloice <graham.bloice () trihedral com>
Date: Wed, 13 Nov 2019 17:30:15 +0000

On Wed, 13 Nov 2019 at 17:24, Richard Sharpe <realrichardsharpe () gmail com>
wrote:

On Wed, Nov 13, 2019 at 9:11 AM Graham Bloice
<graham.bloice () trihedral com> wrote:


On Wed, 13 Nov 2019 at 16:52, Richard Sharpe <
realrichardsharpe () gmail com> wrote:

On Wed, Nov 13, 2019 at 8:45 AM Graham Bloice
<graham.bloice () trihedral com> wrote:

On Wed, 13 Nov 2019 at 16:07, Richard Sharpe <
realrichardsharpe () gmail com> wrote:

Well,

I seem to have gotten further, but then ran into this:

CMake Error at CMakeLists.txt:91 (message): The PLATFORM environment
variable ([undefined]) doesn't match the generator platform (win64)

I notice that this page:

https://osqa-ask.wireshark.org/questions/56074/cmake-build-fails

discusses the problem and points to the document I was using, but
that
document does not address the PLATFORM environment variable.

While it did not take long to figure the issue out, perhaps it could
be pre-empted by adding an additional environment variable to the
list
in the documentation.


The Platform env. variable is set by vcvarsall.bat which is what's
actually run to make a Command Prompt a "Visual Studio Command Prompt.
Setting it manually is NOT the correct thing to do.  It appears that
there's still something wrong in your environment, as I noted on the Ask
question you linked where the OP had a similar issue for reasons that were
never resolved as they failed to respond.

This is what I see when I start the Developer Command Prompt:

**********************************************************************
** Visual Studio 2019 Developer Command Prompt v16.3.9
** Copyright (c) 2019 Microsoft Corporation
**********************************************************************

C:\Users\Richard.Sharpe.A00187\source\repos>set PLATFORM
Environment variable PLATFORM not defined


The preliminary output in the prompt is missing the very important line:

[vcvarsall.bat] Environment initialized for: 'x64'

which shows that vcvarsall.bat was called and set the Platform env.
var.  This indicates something still isn't right about your environment.
What do you have in "C:\Program Files (x86)\Microsoft Visual
Studio\2019\Community\VC\Auxiliary\Build\"?

It's all there. If I run the x86_64 Cross Tools Command Prompt for VS
2019 I get this:

[vcvarsall.bat] Environment initialized for: 'x86_x64'

It seems that Microsoft have just muddied the waters a bit.


Normally (as in the half dozen or so systems I have checked on) you would
have:

07/10/2019  10:18                13 Microsoft.VCRedistVersion.default.txt
07/10/2019  10:18               401 Microsoft.VCToolsVersion.default.props
07/10/2019  10:18                13 Microsoft.VCToolsVersion.default.txt
07/10/2019  10:18               401
Microsoft.VCToolsVersion.v142.default.props
07/10/2019  10:18                13
Microsoft.VCToolsVersion.v142.default.txt
13/11/2019  15:18                39 vcvars32.bat
13/11/2019  15:18                39 vcvars64.bat
07/10/2019  10:18             9,859 vcvarsall.bat
13/11/2019  15:18                43 vcvarsamd64_x86.bat
13/11/2019  15:18                43 vcvarsx86_amd64.bat

Where the vcvarsall.bat batch file is the main file for setting up the
toolchain and the smaller ones just call that with the appropriate
parameter for Native x86 or x64 or cross compilation.

-- 
Graham Bloice
___________________________________________________________________________
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: