[Scons-users] SCons 3.0.3 and Visual Studio 2017

Henrik Edin henrik.edin at mongodb.com
Tue Jan 15 16:08:35 EST 2019


Thanks for this. I just tried the fix now when it has been merged into
master and it resolves the issue for us.

On Tue, Jan 8, 2019 at 10:42 PM Bill Deegan <bill at baddogconsulting.com>
wrote:

> Near line 373 you should probably respect TARGET_ARCH when checking if the
> cl.exe is there. Hardcoding amd64 is could yield false positives..?
>
> On Tue, Jan 8, 2019 at 10:34 PM Daniel Moody <dmoody256 at gmail.com> wrote:
>
>> Using the script is a bit slower, but for the newer versions that have
>> that MSVC version number in the path I think we might have to use the
>> script. Also when using the script, you can still get in a situation where
>> the script exists and runs, but you don't have C++ tools installed, so
>> scons could select a version that you can't build c++ with.
>>
>> Possible solution using the script, I still want to add a way to check if
>> the C++ tools are really installed by checking that cl is in the path:
>>
>> https://github.com/SCons/scons/compare/master...dmoody256:msvc_use_script_to_check?expand=1
>>
>>
>> On Tue, Jan 8, 2019 at 3:31 PM Henrik Edin via Scons-users <
>> scons-users at scons.org> wrote:
>>
>>> Hi,
>>>
>>>
>>>
>>> I tried the new 3.0.3 version that just got released in the MongoDB
>>> codebase and noticed that the Visual Studio 2017 detection seem to be
>>> broken (Explicitly setting MSVC_VERSION=14.1 works).
>>>
>>>
>>>
>>> I activated the MSCommon debugging and got the following output:
>>>
>>>
>>>
>>> msvc_setup_env()
>>>
>>> get_default_version()
>>>
>>> get_default_version(): msvc_version:None msvs_version:None
>>>
>>> trying to find VC 14.1
>>>
>>> find_vc_dir(): found VC in registry: C:\Program Files (x86)\Microsoft
>>> Visual Studio\2017\Professional\VC
>>>
>>> found VC 14.1
>>>
>>> find_vc_pdir no cl.exe found 14.1
>>>
>>>
>>>
>>> It seems like the following commit is the culprit:
>>> https://github.com/SCons/scons/commit/57d09cd12f950ba938ab0164f3b68ed937353318
>>>
>>>
>>>
>>> cl.exe is not located under \bin for VS 2017. In the installation on my
>>> system the location is: C:\Program Files (x86)\Microsoft Visual
>>> Studio\2017\Professional\VC\Tools\MSVC\14.16.27023\bin\HostX64\x64\cl.exe
>>>
>>>
>>>
>>> I don’t think there’s a good way to get this path other than to load the
>>> environment variables with the batch file.
>>>
>>>
>>>
>>> Henrik
>>>
>>>
>>> _______________________________________________
>>> Scons-users mailing list
>>> Scons-users at scons.org
>>> https://pairlist4.pair.net/mailman/listinfo/scons-users
>>>
>> _______________________________________________
>> Scons-users mailing list
>> Scons-users at scons.org
>> https://pairlist4.pair.net/mailman/listinfo/scons-users
>>
> _______________________________________________
> Scons-users mailing list
> Scons-users at scons.org
> https://pairlist4.pair.net/mailman/listinfo/scons-users
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://pairlist4.pair.net/pipermail/scons-users/attachments/20190115/963f2b26/attachment.html>


More information about the Scons-users mailing list