-
Notifications
You must be signed in to change notification settings - Fork 54
wgrib2 2.0.8/3.1.1 do not build with Intel oneAPI LLVM compilers #967
Description
Describe the bug
==> Installing wgrib2-2.0.8-izv2torii27jtoc2eqvf3pu5khxb2gfj [74/362]
==> No binary for wgrib2-2.0.8-izv2torii27jtoc2eqvf3pu5khxb2gfj found: installing from source
==> Error: UnboundLocalError: local variable 'comp_sys' referenced before assignment
/home/ubuntu/sandpit/spack-stack/spack/var/spack/repos/builtin/packages/wgrib2/package.py:160, in setup_build_environment:
157 elif self.spec.compiler.name in ["gcc", "clang", "apple-clang"]:
158 comp_sys = "gnu_linux"
159
>> 160 env.set("COMP_SYS", comp_sys)
This is one of many problems when trying to build wgrib2 (2.0.8 or 3.1.1) with the oneAPI compilers (icx, icpx). Note that with the release of oneAPI 2024.0, Intel has removed the classic C/C++ compilers and for now the best/vetted combination is icx/icpx/ifort.
We therefore need a solution for wgrib2 asap - as a workaround, I will remove wgrib2 from the stack if the Intel oneAPI compilers are used.
To Reproduce
Build with Intel oneAPI LLVM compilers (icx, icpx)
Expected behavior
It recognizes the compiler and builds
System:
New AWS ParallelCluster using Ubuntu 22.04 and Intel oneAPI 2024.0.2 (there are no classic C/C++ compilers anymore)
Additional context
@AlexanderRichert-NOAA @edwardhartnett @aerorahul At first I thought I could fix this along the way because it looked like a simple problem, but solving one problem led to another and I don't have the bandwidth to work on this. I'll therefore remove wgrib2 from the environment if the LLVM/oneAPI compilers are used so that I can continue building and testing (there are other package failures, too) until someone has come up with a solution for wgrib2.