Runner failing
jalvesz opened this issue · 5 comments
Description
There is a new bug with one of the Ubuntu intel runners since a week or so:
https://github.com/fortran-lang/stdlib/actions/runs/12945506890/job/36108202926
opt/intel/oneapi/compiler/2023.1.0/linux/bin/intel64/../../compiler/include/math.h(191),
from /home/runner/work/stdlib/stdlib/test/hash_functions/waterhash.h(12),
from /home/runner/work/stdlib/stdlib/test/hash_functions/generate_hash_arrays.cpp(7):
/usr/include/x86_64-linux-gnu/bits/mathcalls.h(259): error: expected a ";"
__MATHCALL (rint,, (_Mdouble_ __x));
^
compilation aborted for /home/runner/work/stdlib/stdlib/test/hash_functions/generate_hash_arrays.cpp (code 4)
ninja: build stopped: subcommand failed.
No clue what's going on as this file has not been changed.
Expected Behaviour
Should build
Version of stdlib
Main
Platform and Architecture
Ubuntu
Additional Information
No response
I suspect some incompatibility between this version of Intel and Ubuntu24.04. Using Ubuntu 20.04 solved the issue.
So what would be the best strategy:
supporting a newer version of Intel-classic
Using Ubuntu 20.04 or 22.04
?
That's a good idea, I use oneapi23 with Ubuntu 22.04 flawlessly but haven't tried with Ubuntu 24, so it must probably be an incompatibility issue.
I see that we use Intel 2024.1 for `ifx. Could we upgrade Intel classic from 2021 to 2024.1, instead of downgrading Ubuntu from 24.04 to 22.04? I have no idea what is the best solution.
I think the last ifort version is the 2021.11, if I'm not mistaken this is the last that was shipped in the last version of oneapi2024. We could indeed try that, I'm not sure though if that will solve the problem. Also, I think Ubuntu 22.04 LTS is still heavily used. I would say then, let's try updating to the last oneapi with ifort which I think we should still support for a while. If that doesn't work, let's add an Ubuntu 22 runner.
I've attempted to upgrade setup-fortran
to 1.6.2 and the later versions until 2021.12
, but the issue is still unresolved.
The default gcc in Ubuntu 24.04 is gcc-13. Its standard C library includes _Float32
in the headers, that is not supported by icpc
.
Intel reports that the latest Ubuntu they support is 22.04:
This document: https://www.intel.com/content/www/us/en/developer/articles/system-requirements/oneapi-c-compiler-system-requirements.html
So, I believe the only safe way to keep supporting Intel Classic is to limit its CI to Ubuntu 22.04 (for as long as it's available in the github runners)