Community
cancel
Showing results for 
Search instead for 
Did you mean: 
DLake1
New Contributor I
492 Views

Trying to build boost 1.65.1

Jump to solution
Trying to build boost 1.65.1 with compiler 17 for visual studio 2017 and I'm getting lots of this: compile-c-c++ C:\Users\Administrator\Documents\Visual Studio 2017\boost_1_65_1\boost\bin.v2\libs\wave\build\intel-vc14-win-17.0\debug\address-model-64\link-static\runtime-link-static\threading-multi\cpplexer\re2clex\cpp_re.obj cpp_re.cpp C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Tools\MSVC\14.10.25017\include\xtr1common(100): error: "is_same_v" is not a function or static data member constexpr bool is_same_v = is_same<_Ty, _Uty>::value; ^ C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Tools\MSVC\14.10.25017\include\xtr1common(100): error: "constexpr" is not valid here constexpr bool is_same_v = is_same<_Ty, _Uty>::value; ^ C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Tools\MSVC\14.10.25017\include\xtr1common(243): error: "is_integral_v" is not a function or static data member constexpr bool is_integral_v = is_integral<_Ty>::value; ^ C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Tools\MSVC\14.10.25017\include\xtr1common(243): error: "constexpr" is not valid here constexpr bool is_integral_v = is_integral<_Ty>::value; ^ C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Tools\MSVC\14.10.25017\include\xtr1common(278): error: "is_floating_point_v" is not a function or static data member constexpr bool is_floating_point_v = is_floating_point<_Ty>::value; ^ compilation aborted for libs\wave\src\cpplexer\re2clex\cpp_re.cpp (code 4) call "C:\Users\ADMINI~1\AppData\Local\Temp\b2_intel-win_17.0_iclvars_intel64 vs2015.cmd" > nul icl @"C:\Users\Administrator\Documents\Visual Studio 2017\boost_1_65_1\boost\bin.v2\libs\wave\build\intel-vc14-win-17.0\debug\address-model-64\link-static\runtime-link-static\threading-multi\cpplexer\re2clex\cpp_re.obj.rsp" ...failed compile-c-c++ C:\Users\Administrator\Documents\Visual Studio 2017\boost_1_65_1\boost\bin.v2\libs\wave\build\intel-vc14-win-17.0\debug\address-model-64\link-static\runtime-link-static\threading-multi\cpplexer\re2clex\cpp_re.obj... Sorry for my bluntness I was annoyed that I lost my original post because I didn't enter a title, I cant do anything with my project till I get this fixed.
0 Kudos
1 Solution
Ivan_K_Intel
Employee
492 Views

CommanderLake,

Thank you for reporting the issue, we will work with the boost community to patch the issue in the future versions.
To add msvc 14.1 support into boost you need to modify line 478 of tools/build/src/tools/intel-win.jam file. Instead of this line:

.iclvars-17.0-supported-vcs = "14.0 12.0 11.0 10.0" ;

Add these ones:

.iclvars-17.0-supported-vcs = "14.1 14.0 12.0 11.0 10.0" ;
.iclvars-version-alias-vc14.1 = vs2017 ;

After that you will be able to use toolset intel-17_0-vc14.1.

View solution in original post

6 Replies
Judith_W_Intel
Employee
492 Views

 

Shouldn't this:

call "C:\Users\ADMINI~1\AppData\Local\Temp\b2_intel-win_17.0_iclvars_intel64 vs2015.cmd" > nul

be vs2017 not vs2015?

I see the compilation errors if I explicitly specify MSVC++ 2015 compatibility mode (i.e. use /Qvc14) but not if I explicitly specify MSVC++ 2017 mode (/Qvc14.1). So the compiler is thinking your reference compiler is MSVC++ 2015 not 2017. variable templates were not supported in VS2015 until update 2 so we don't support them unless your reference compiler is also MSVC++ 2015 Update 2 or later.

Judy

DLake1
New Contributor I
492 Views
I get the same output with /Qvc14.1 and I dont know how to specify a toolset of 14.1 when building boost if I specify "toolset=intel-17.0" I get the above, if I specify "toolset=intel" I get: error: No Intel compiler version found! if I specify "toolset=intel-17.0-14.1" I get: error: Supported msvc versions not known for intel 17.0-14.1
JenniferJ
Moderator
492 Views

You can find out how to add compiler options from the boost site. start from here: http://www.boost.org/build/doc/html/bbv2/overview/configuration.html

Jennifer

DLake1
New Contributor I
492 Views

That only tells me how to specify the compiler version (17) not the toolset version (14.1)?

If i specify toolset=intel-17.0-vc141 it gives me: error: msvc 141 not supported for intel toolset version 17.0

Ivan_K_Intel
Employee
493 Views

CommanderLake,

Thank you for reporting the issue, we will work with the boost community to patch the issue in the future versions.
To add msvc 14.1 support into boost you need to modify line 478 of tools/build/src/tools/intel-win.jam file. Instead of this line:

.iclvars-17.0-supported-vcs = "14.0 12.0 11.0 10.0" ;

Add these ones:

.iclvars-17.0-supported-vcs = "14.1 14.0 12.0 11.0 10.0" ;
.iclvars-version-alias-vc14.1 = vs2017 ;

After that you will be able to use toolset intel-17_0-vc14.1.

View solution in original post

DLake1
New Contributor I
492 Views

Perfect! Thanks, its working now.

Reply