Closed nicogodet closed 3 months ago
Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe
) and found it was in an excellent condition.
Not very elegant to downgrade to VS2019 but CBT is deprecated in VS2022 and current msmpi project requires CBT. Not in my scope to update it.
I don't think we should be calling this microsoft-msmpi if the sources are different.
Sources are stil 99% Microsoft ones with a little from msys2. For my own purposes, I used m2w64-msmpi but changing name in conda-forge will have a lot of consequences on packages that depends on msmpi.
I'm not a licence expert but from my understanding of MIT, packaging this slightly modified sources under original name is not forbidden.
If we rename, what should it be ?
m2w64-msmpi
?
Need to double check some things
If I want everything to work properly, msmpi needs to be installed in %LIBRARY_PREFIX%/mingw-w64
or f2py fails to link properly
gcc -g -shared tmp_f2py\Release\tmp_f2py\src.win-amd64-3.10\lib\_hermesmodule.o tmp_f2py\Release\tmp_f2py\src.win-amd64-3.10\tmp_f2py\src.win-amd64-3.10\lib\fortranobject.o -LD:\DEV\LOCAL\t
est\telemac-mascaret-v8p4r0\builds\gnu.dynamic\wrap_api\lib -LD:\miniforge3\envs\build-telemac\libs -LD:\miniforge3\envs\build-telemac -LD:\miniforge3\envs\build-telemac\PCbuild\amd64 -lher
mes4api -lspecial4api -lgfortran -lmetis -lmsmpi -lpthread -lpython310 -o .\_hermes.cp310-win_amd64.pyd
D:/miniforge3/envs/build-telemac/Library/mingw-w64/bin/../lib/gcc/x86_64-w64-mingw32/5.3.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lmsmpi
collect2.exe: error: ld returned 1 exit status
error: Command "gcc -g -shared tmp_f2py\Release\tmp_f2py\src.win-amd64-3.10\lib\_hermesmodule.o tmp_f2py\Release\tmp_f2py\src.win-amd64-3.10\tmp_f2py\src.win-amd64-3.10\lib\fortranobject.o
-LD:\DEV\LOCAL\test\telemac-mascaret-v8p4r0\builds\gnu.dynamic\wrap_api\lib -LD:\miniforge3\envs\build-telemac\libs -LD:\miniforge3\envs\build-telemac -LD:\miniforge3\envs\build-telemac\PCb
uild\amd64 -lhermes4api -lspecial4api -lgfortran -lmetis -lmsmpi -lpthread -lpython310 -o .\_hermes.cp310-win_amd64.pyd" failed with exit status 1
If I copy bin/msmpi.dll to mingw-w64/bin/ and lib/libmsmpi.dll.a to mingw-w64/lib/, it runs successfully.
Checklist
0
(if the version changed)conda-smithy
(Use the phrase code>@<space/conda-forge-admin, please rerender in a comment in this PR for automated rerendering)msmpi is now built against https://github.com/nicogodet/Microsoft-MPI. This is a fork of https://github.com/microsoft/Microsoft-MPI, as GH repo is still on MIT licence, including pending PRs and necessary files to build wrappers (mpicc, mpicxx, mpic++, mpifort, mpif77, mpif90). Fixes #19
file mpi.c is adapted from msys2 mpi.c file.
A built package is available here: https://anaconda.org/nicogodet/m2w64-msmpi/10.1.1/download/win-64/m2w64-msmpi-10.1.1-h82bb817_5.tar.bz2
These wrappers are mandatory to build several other (like scalapack, mumps with MPI support). Example for scalapack:
https://anaconda.org/nicogodet/m2w64-scalapack/2.2.1.6/download/win-64/m2w64-scalapack-2.2.1.6-0.tar.bz2