-
Notifications
You must be signed in to change notification settings - Fork 4
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Compilers unrecognised on Windows #9
Comments
I notice the tests don't even ever run the MS-MPI compiler... Why is it the default MPI compiler on Windows if it's unusable? 😕 |
because MS-MPI seems bugged? mpi4py/setup-mpi#9
Microsoft MPI does not have/use compiler wrappers. You should use environment variables to manually pass include-dir/library-dir flags and msmpi.lib, the list of vars is here: https://github.com/mpi4py/setup-mpi/blob/master/setup-msmpi.ps1#L39. Please note that Windows is not an OS I have ultimate expertise with, therefore I cannot assert that things are properly setup for this action to be really useful. My primary motivation was to ease the testing of mpi4py. Anyway, mpi4py is able to build with CMake just fine with both Intel MPI and MSMPI, so that means things are kind of OK. You should probably stay away from MSMPI and target Intel MPI instead. Intel MPI do have compiler wrappers ( |
Ahh I see, that makes sense - and is another reason why Windows development is absolutely cursed 🙏 I definitely then think the Intel compiler should be the default. Otherwise, an attemptedly os-agnostic workflow which uses |
You are definitely right. However, I'm quite conscious about backward compatibility. I cannot make intelmpi the default in a minor update, that should wait until at least release v2 of this action. And making a new major release just to change a default seems a little bit too much.
Most os-agnostic attempts fail when Windows is added to a matrix! Maybe we could map |
Ahh yep that's a fair consideration. Indeed I was going to suggest changing the default on the next version, but I suppose you're right it's an insufficient update (although I don't know what's standard r.e. github actions)
Hehe that's true, though I suppose one shouldn't widen the changes needed ¯\(ツ)/¯
That sounds like a good idea, but I've personally no idea/expertise on whether aliasing a derivative compiler as the foundation is good practice! I see now it's more nuanced than I first appreciated 🙏 |
Hi there,
Thanks very much for a wonderfully helpful Github Action!
I was wondering what the compiler command is when on Windows. I've tried
but none of them are recognised, though they work on
ubuntu-latest
andmacos-latest
.My workflow is a very simple:
but my actions report that
mpicxx
is not recognised.I can see in the CI that these commands should work, at least when using the Intel MPI compiler.
What am I doing wrong? Do I need to give the action extra clues about my os?
The text was updated successfully, but these errors were encountered: