bfgroup / b2

B2 makes it easy to build C++ projects, everywhere.
https://www.bfgroup.xyz/b2/
Boost Software License 1.0
80 stars 229 forks source link

Add support for Intel oneAPI on Linux #413

Open MarDiehl opened 2 months ago

MarDiehl commented 2 months ago

Make sure you completed the following tasks

Environment and version details

Brief problem description

Options defined in https://github.com/bfgroup/b2/blob/3c0f5630157c3db1025b54c2f6da25cf234b8e20/src/tools/intel-linux.jam are incompatible with LLVM-based Intel compilers:

Steps to reproduce the issue

Install Boost with

./bootstrap.sh --prefix=/tmp/boost
./b2 install --without-python --without-graph_parallel --without-mpi cxxstd=17  toolset=intel-linux  link=shared address-model=64 architecture=x86 runtime-link=shared

Actual behavior summary

The compiler gives warnings and errors and installation of a few files fails. A few example errors are shown

intel-linux.compile.c++ bin.v2/libs/log/build/intel-linux-linux/release/x86_64/cxxstd-17-iso/threading-multi/visibility-hidden/trivial.o
icpx: command line warning #10430: Unsupported command line options encountered
These options as listed are not supported.
For more information, use '-qnextgen-diag'.
option list: 
    -ip
    -wd177,780,2196,1782,193,304,981,1418,411,734,279
...skipped <pbin.v2/libs/math/build/intel-linux-linux/release/x86_64/cxxstd-17-iso/threading-multi/visibility-hidden>acoshl.o for lack of <pbin.v2/libs/math/build/intel-linux-linux/release/x86_64/cxxstd-17-iso/threading-multi/visibility-hidden>pch.pchi...
...failed updating 1 target...
   intel-linux.compile.c++.pch bin.v2/libs/math/build/intel-linux-linux/release/x86_64/cxxstd-17-iso/threading-multi/visibility-hidden/pch.pchi

Expected behavior summary

b2 should support the most recent Intel C++ compiler (icpx)