Re: Problem using multiple intel-win toolsets using Boost Build 'develop' branch
Edward Diener via Boost-build <[email protected]> Wed, 20 Nov 2019 09:49:49 -0500
| Newsgroups | gmane.comp.lib.boost.build |
|---|---|
| Message-ID | <[email protected]> |
On 11/19/2019 2:17 AM, Edward Diener via Boost-build wrote: > I have multiple versions of Intel C++ for Windows installed. In my > user-config.jam the toolset definitions are: > > using intel-win : 19.0 : > : > <compatibility>vc14.2 > > <root>"C:/Utilities/IntelSWTools/parallel_studio_xe_2019/compilers_and_libraries_2019/windows/bin" > > <rewrite-setup-scripts>off > <cxxflags>"/Qdiag-disable:2415,367,3280,177" > ; > > using intel-win : 18.0 : > : > <compatibility>vc14.1 > > <root>"C:/Utilities/IntelSWTools/parallel_studio_xe_2018/compilers_and_libraries_2018/windows/bin" > > <rewrite-setup-scripts>off > <cxxflags>"/Qdiag-disable:2415,367,3280,177,3346" > ; > > I can run tests successfully specifying toolset=intel-win-19.0, but I > can not run tests at all specifying toolset=intel-win-18.0. This has > nothing to do with any differences in the toolset definition between > 19.0 and 18.0. If I switch the order of the toolset definitions then > 18.0 runs successfully and 19.0 does not run at all. > > What I mean by not running at all is that the compilation and link > commands are missing the actual commands, and just show the command > parameters. I have debugged the situation through the intel-win.init > rule and everything is set up correctly in both cases. Also showing the > relative portion of --debug-configuration output we have: > > notice: will use > 'C:\Utilities\IntelSWTools\compilers_and_libraries_2019.5.281\windows\bin\intel64\icl.exe' > for intel-win, condition <toolset>intel-win-19.0-vc14.2 > notice: [intel-cfg] condition: > '<toolset>intel-win-19.0-vc14.2/<architecture>/<address-model>', setup: > 'call > "C:\Utilities\IntelSWTools\parallel_studio_xe_2019\compilers_and_libraries_2019\windows\bin\iclvars.bat" > ia32 vs2019 > nul' > notice: [intel-cfg] condition: > '<toolset>intel-win-19.0-vc14.2/<architecture>/<address-model>32', > setup: 'call > "C:\Utilities\IntelSWTools\parallel_studio_xe_2019\compilers_and_libraries_2019\windows\bin\iclvars.bat" > ia32 vs2019 > nul' > notice: [intel-cfg] condition: > '<toolset>intel-win-19.0-vc14.2/<architecture>x86/<address-model>', > setup: 'call > "C:\Utilities\IntelSWTools\parallel_studio_xe_2019\compilers_and_libraries_2019\windows\bin\iclvars.bat" > ia32 vs2019 > nul' > notice: [intel-cfg] condition: > '<toolset>intel-win-19.0-vc14.2/<architecture>x86/<address-model>32', > setup: 'call > "C:\Utilities\IntelSWTools\parallel_studio_xe_2019\compilers_and_libraries_2019\windows\bin\iclvars.bat" > ia32 vs2019 > nul' > notice: [intel-cfg] condition: > '<toolset>intel-win-19.0-vc14.2/<architecture>/<address-model>64', > setup: 'call > "C:\Utilities\IntelSWTools\parallel_studio_xe_2019\compilers_and_libraries_2019\windows\bin\iclvars.bat" > intel64 vs2019 > nul' > notice: [intel-cfg] condition: > '<toolset>intel-win-19.0-vc14.2/<architecture>x86/<address-model>64', > setup: 'call > "C:\Utilities\IntelSWTools\parallel_studio_xe_2019\compilers_and_libraries_2019\windows\bin\iclvars.bat" > intel64 vs2019 > nul' > notice: will use > 'C:\Utilities\IntelSWTools\compilers_and_libraries_2018.5.274\windows\bin\intel64\icl.exe' > for intel-win, condition <toolset>intel-win-18.0-vc14.1 > notice: [intel-cfg] condition: > '<toolset>intel-win-18.0-vc14.1/<architecture>/<address-model>', setup: > 'call > "C:\Utilities\IntelSWTools\parallel_studio_xe_2018\compilers_and_libraries_2018\windows\bin\iclvars.bat" > ia32 vs2017 > nul' > notice: [intel-cfg] condition: > '<toolset>intel-win-18.0-vc14.1/<architecture>/<address-model>32', > setup: 'call > "C:\Utilities\IntelSWTools\parallel_studio_xe_2018\compilers_and_libraries_2018\windows\bin\iclvars.bat" > ia32 vs2017 > nul' > notice: [intel-cfg] condition: > '<toolset>intel-win-18.0-vc14.1/<architecture>x86/<address-model>', > setup: 'call > "C:\Utilities\IntelSWTools\parallel_studio_xe_2018\compilers_and_libraries_2018\windows\bin\iclvars.bat" > ia32 vs2017 > nul' > notice: [intel-cfg] condition: > '<toolset>intel-win-18.0-vc14.1/<architecture>x86/<address-model>32', > setup: 'call > "C:\Utilities\IntelSWTools\parallel_studio_xe_2018\compilers_and_libraries_2018\windows\bin\iclvars.bat" > ia32 vs2017 > nul' > notice: [intel-cfg] condition: > '<toolset>intel-win-18.0-vc14.1/<architecture>/<address-model>64', > setup: 'call > "C:\Utilities\IntelSWTools\parallel_studio_xe_2018\compilers_and_libraries_2018\windows\bin\iclvars.bat" > intel64 vs2017 > nul' > notice: [intel-cfg] condition: > '<toolset>intel-win-18.0-vc14.1/<architecture>x86/<address-model>64', > setup: 'call > "C:\Utilities\IntelSWTools\parallel_studio_xe_2018\compilers_and_libraries_2018\windows\bin\iclvars.bat" > intel64 vs2017 > nul' > > which is all correct for both 19.0 and 18.0. But like I said I verified > by using the Boost Build debugger that the configuration initialization > ( intel-win.init ) is correct in what it does for both toolsets. > > But looking at the output also with -d2 everything further refers to > 'intel-vc14.2-win-18.0' rather than 'intel-vc14.1-win-18.0', and I think > that is why the compilation and link commands do not have the actual > commands but just the parameters. > > file > C:\Programming\build\modular-boost\boost\bin.v2\libs\preprocessor\test\cpp_standard.test\intel-vc14.2-win-18.0\debug\address-model-64\threading-multi\cpp_standard.obj.rsp > > "cpp_standard.cpp" > -Fo"C:\Programming\build\modular-boost\boost\bin.v2\libs\preprocessor\test\cpp_standard.test\intel-vc14.2-win-18.0\debug\address-model-64\threading-multi\cpp_standard.obj" > -TP /Z7 /Od /Ob0 /W3 /GR /MDd /EHs -c > -DBOOST_ALL_NO_LIB=1 > "-I..\..\.." > compile-c-c++ > C:\Programming\build\modular-boost\boost\bin.v2\libs\preprocessor\test\cpp_standard.test\intel-vc14.2-win-18.0\debug\address-model-64\threading-multi\cpp_standard.obj > > > > @"C:\Programming\build\modular-boost\boost\bin.v2\libs\preprocessor\test\cpp_standard.test\intel-vc14.2-win-18.0\debug\address-model-64\threading-multi\cpp_standard.obj.rsp" > > > > file > C:\Programming\build\modular-boost\boost\bin.v2\libs\preprocessor\test\cpp_standard.test\intel-vc14.2-win-18.0\debug\address-model-64\threading-multi\cpp_standard.exe.rsp > > > "C:\Programming\build\modular-boost\boost\bin.v2\libs\preprocessor\test\cpp_standard.test\intel-vc14.2-win-18.0\debug\address-model-64\threading-multi\cpp_standard.obj" > > intel-win.link > C:\Programming\build\modular-boost\boost\bin.v2\libs\preprocessor\test\cpp_standard.test\intel-vc14.2-win-18.0\debug\address-model-64\threading-multi\cpp_standard.exe > > > /DEBUG /subsystem:console > /out:"C:\Programming\build\modular-boost\boost\bin.v2\libs\preprocessor\test\cpp_standard.test\intel-vc14.2-win-18.0\debug\address-model-64\threading-multi\cpp_standard.exe" > > @"C:\Programming\build\modular-boost\boost\bin.v2\libs\preprocessor\test\cpp_standard.test\intel-vc14.2-win-18.0\debug\address-model-64\threading-multi\cpp_standard.exe.rsp" > > if %ERRORLEVEL% NEQ 0 EXIT %ERRORLEVEL% > > '/DEBUG' is not recognized as an internal or external command, > operable program or batch file. > > Somehow the actual CPU conditions, as reflected in the file placement > above, becomes a mishmash of the 'intel-win-19.0-vc14.2' and the > 'intel-win-18.0-vc14.1' to form 'intel-win-18.0-vc14.2', and naturally > there are no .SETUP, .CC, or .LD for this mishmash case so the commands > used lack a setup, compiler, or linker. > > Does anybody have an idea what is causing this problem in Boost Build > with multiple intel-win toolsets ? I believe this was previously working > but some fairly recent changes somewhere in the Boost Build logic has > caused this problem. Any pointers of where I can look to see why the > mishmash change is being made using the Boost Build debugger would also > be welcome. > > BTW in Windows if I change the toolset name to just 'intel' instead of > 'intel-win' and invoke it as 'toolset=intel-18.0' the same problem still > occurs. I created a Boost Build issue about this at https://github.com/boostorg/build/issues/510. _______________________________________________ Unsubscribe & other changes: https://lists.boost.org/mailman/listinfo.cgi/boost-build