WRF
WRF copied to clipboard
WRF 4.6 Build Error for "INTEL (ifx/icx) : oneAPI LLVM" (dm+sm) option with 2024.2.1 compiler. icx does not have the option, "-auto".
When compiling WRF 4.6 with the Intel oneapi 2024.2.1 compiler for the dm+sm option (#79), building the source file share/setfeenv.c fails.
The error is:
icx -o setfeenv.o -c -w -O3 -ip -DDM_PARALLEL -DLANDREAD_STUB=1 -DMAX_HISTORY=25 -DNMM_CORE=0 -qopenmp -auto setfeenv.c
icx: error: unknown argument: '-auto'
make[2]: [../configure.wrf:405: setfeenv.o] Error 1 (ignored)
The oneapi Intel 2024.2.1 icx compiler has no option for -auto while ifx and mpiifx have this argument.
The configure.wrf environment option ...
OMPCC = -qopenmp -auto
... appears to be the origin of the error.
The error can be mitigated for now by letting the rest of the compilation build to final failure. The user can then manually go into the share/ directory and personally enter the impacted command without the -auto argument ...
icx -o setfeenv.o -c -w -O3 -ip -DDM_PARALLEL -DLANDREAD_STUB=1 -DMAX_HISTORY=25 -DNMM_CORE=0 -qopenmp setfeenv.c
... and the user can then repeat the compile em_real command.
I don't trust my scripting expertise to make a pull request. I'll leave it to the development team to implement any patch without unintended complications.
@wjcapehart Thanks for the report. We have added this fix to our soon-to-be-released 4.6.1 code. See PR-2059.
@wjcapehart https://github.com/wrf-model/WRF/releases/tag/v4.6.1 should now have this fix. I'll close this issue, but if you find that the mentioned PR / tag doesn't fix this issue we can reopen it.