Subject: Re: [boost] Missing winerror.h for MSVC-9
From: Tom Kent (lists_at_[hidden])
Date: 2017-02-06 13:51:50


On Sat, Feb 4, 2017 at 5:00 PM, Andrey Semashev <andrey.semashev_at_[hidden]>
wrote:

> On Sun, Feb 5, 2017 at 12:40 AM, Tom Kent <lists_at_[hidden]> wrote:
> >
> > I've got the build log from a teeks99-02b run here:
> > https://gist.github.com/teeks99/29866e0b99b9863f3017ab898a2a
> fd19#file-build_output-log
>
> Looking at the log above, it seems odd that MSVC *8.0* is used, not
> 9.0. Are you sure this is the correct log?
>

I'm not sure why you think that. The regression command definitely has
--toolsets=msvc-9.0 and the important line(s) around 9388 are showing as
running with msvc-9.0:

# Starting tests ("D:\teeks99-09\run\boost_bb\src\engine\bin.ntx86\bjam.exe"
"-sBOOST_BUILD_PATH=D:\teeks99-09\run;D:\teeks99-09\run\boost_bb\src"
"-sBOOST_ROOT=D:\teeks99-09\run\boost_root"
"--boost=D:\teeks99-09\run\boost_root"
"--boost-root=D:\teeks99-09\run\boost_root"
"--boost-build=D:\teeks99-09\run\boost_bb\src"
"--debug-configuration" -l300 toolset=msvc-9.0 -d2
preserve-test-targets=off --dump-tests -j8 address-model=64
--remove-test-targets --abbreviate-paths -m64
"--build-dir=D:\teeks99-09\run\results"
>>"D:\teeks99-09\run\results\bjam.log" 2>&1)...
D:\teeks99-09\run\boost_root\status>"D:\teeks99-09\run\boost
_bb\src\engine\bin.ntx86\bjam.exe" "-sBOOST_BUILD_PATH=D:\teeks99
-09\run;D:\teeks99-09\run\boost_bb\src"
"-sBOOST_ROOT=D:\teeks99-09\run\boost_root"
"--boost=D:\teeks99-09\run\boost_root"
"--boost-root=D:\teeks99-09\run\boost_root"
"--boost-build=D:\teeks99-09\run\boost_bb\src" "--debug-configuration"
-l300 toolset=msvc-9.0 -d2 preserve-test-targets=off --dump-tests -j8
address-model=64 --remove-test-targets --abbreviate-paths -m64
"--build-dir=D:\teeks99-09\run\results" 1>>"D:\teeks99-09\run\results\bjam.log"
2>&1

>
> Also, a random idea. You see that msvc.write-setup-script step in the
> log? Could you verify that the cmd file for MSVC 9.0 in that directory
> contains the correct environment setup?
>

I think you may be on to something here. The file generated during the
faulty (teeks99-09b) run:
https://gist.github.com/teeks99/bd3ee6c93a8b4b8d4ec8defdfb20
6f3b#file-b2_msvc_9-0_vcvarsall_amd64-cmd

Is different from the file generated during the successful (teeks99-08b)
run on a different VM (without VS 2017 RC installed):
https://gist.github.com/teeks99/26e4dc5b8e98a5342da8368549512a
15#file-b2_msvc_9-0_vcvarsall_amd64-cmd

Specifically, the include path for the windows SDK isn't included. Looking
at the "Visual Studio 2008 x64 Win64 Command Prompt" variables, the windows
sdk path *does* show up there (and the native x86 command prompt and the
cross compiler x64 command prompt) so something in the boost-build setup is
not transferring that?

I'm not sure where to look from here, any ideas?

Tom