Boost logo

Boost-Build :

Subject: Re: [Boost-build] Problem with Intel compiler and pch support
From: Vladimir Prus (ghost_at_[hidden])
Date: 2008-10-25 12:27:55


On Wednesday 22 October 2008 20:42:37 John Maddock wrote:
> Trying to compile a project that has pch support with the intel toolset on
> win32 results in a bbv2 failure:
>
> Error: ambiguity found when searching for best transformation
> Trying to produce type 'CPP_PCH' from:
> - { ../src/tr1/pch.hpp.HPP }
> Generators that succeeded:
> - pch.default-cpp-pch-generator
> - intel-win.compile.c++.pch
> First generator produced:
> Second generator produced:
> - { intel-win%intel-win.compile.c++.pch-pch.pch.CPP_PCH {
> ../src/tr1/pch.hpp.H
> PP } }
> - { intel-win%intel-win.compile.c++.pch-pch.obj.OBJ {
> ../src/tr1/pch.hpp.HPP }
> }
>
> BTW Intel on win32 has the same pch mechanism as msvc, and the attached
> patch fixes the bbv2 errors OK

Please commit the patch.

> but:
>

> * Intel changes the name of the pch file to have a ".pchi" file extension so
> dependency checking is broken and the pch gets regenerated every time bjam
> is run, which in turn causes the whole project to rebuild :-(

Does adding:

        type.set-generated-target-suffix PCH : <toolset>intel <target-os>windows : pchi ;

to intel-win.jam fixes this problem?

> * Intel doesn't support the -Yl option, so you get a warning emitted when
> building the pch

Can you copy-paste the compile-c-c++-pch and compile-c-c++-pch-s actions from
msvc.jam to intel-win.jam and remove the -Yl option?

- Volodya


Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk