I know, but it's not like distutils is alone in making errors.

Though, I will admit, I wasn't really aware of what that cling thing was
until now. It seems to me that this is cling running scripts (perhaps a
test-phase of the build?) so it doesn't really seem like a good idea to
drop all (icpc) flags that aren't compatible with their LLVM based Cling
plugin, as it would affect the rest of the build as well. I couldn't spot
any obvious way where cling would select a linker command, so it's probably
builtin somehow, so cleaning up LDFLAGS for this step seems like the only
obvious way forward.


On Tue, Feb 4, 2020 at 1:07 PM Åke Sandgren <[email protected]>
wrote:

> But ROOT is not a pythonpackage it is cmakemake, so that "should" not be
> the problem.
>
> On 2/4/20 10:11 AM, Mikael Öhman wrote:
> > I recognize this type of error; it's exactly what you get in
> > pythonpackages under intel with Python @ GCCcore where it picks up GCC
> > as the linker command, but tries to use the LDFLAGS for intel.
> > If this also is the case here, the proper fix would be to fix the linker
> > command (maybe the suggested patches fixes that though)
> >
> > / Micke
> >
> >
> > On Tue, Feb 4, 2020, 06:24 Jack Perdue <[email protected]
> > <mailto:[email protected]>> wrote:
> >
> >     Howdy all,
> >
> >     I'm trying to build a ROOT/6.14.06/intel-2018b-Python-2.7.15
> >     based on EB's included ROOT-6.14.06-foss-2018b-Python-2.7.15.eb
> >     (with a simple s/foss/intel/).
> >
> >     It all goes well until the final link where I get:
> >
> >     error: unknown argument: '-fp-model'
> >     error: unknown argument: '-ftz'
> >     error: unknown argument: '-fp-speculation=safe'
> >     <<< cling interactive line includer >>>:1:10: fatal error: 'source'
> >     file
> >     not found
> >     #include "source"
> >               ^~~~~~~~
> >     Error: Parsing Linkdef file etc/dictpch/allLinkDefs.h
> >
> >     It isn't clear why it is waiting until the end to
> >     choke on these valid Intel flags.
> >
> >     In any case, I tracked those settings down to
> >     the CFLAGS/FFLAGS/etcFLAGS that EB sets for cmake.
> >     After digging around, I found line 64 in
> >     toolchains/compiler/inteliccifort.py which has
> >
> >        'defaultprec': ['ftz', 'fp-speculation=safe', 'fp-model source'],
> >
> >     for a toolchain option.
> >
> >     So I tried various options to turn that option off
> >     (some were just guesses).
> >
> >     toolchainopts = {'pic': True, 'defaultprec': False}
> >     and
> >     toolchainopts = {'pic': True, 'defaultprec': ''}
> >     and
> >     defaultprec = ['']
> >
> >     None of those worked.
> >
> >     If I manually hack inteliccifort.py to disable
> >     those settings, then my build for ROOT-intel
> >     works.
> >
> >     Feel to try it yourself (I'm using EB 4.1.1).
> >
> >     Obviously it would be nice to just fix the link,
> >     but I'm curious about other possible uses.
> >
> >     How does one disable defaultprec when using
> >     the Intel toolchain?
> >
> >     --
> >     Jack Perdue
> >     Lead Systems Administrator
> >     High Performance Research Computing
> >     TAMU Division of Research
> >     [email protected] <mailto:[email protected]>    http://hprc.tamu.edu
> >     HPRC Helpdesk: [email protected] <mailto:[email protected]>
> >
>
> --
> Ake Sandgren, HPC2N, Umea University, S-90187 Umea, Sweden
> Internet: [email protected]   Phone: +46 90 7866134 Fax: +46 90-580 14
> Mobile: +46 70 7716134 WWW: http://www.hpc2n.umu.se
>

Reply via email to