-
-
Notifications
You must be signed in to change notification settings - Fork 17
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
add Windows #92
add Windows #92
Conversation
…nda-forge-pinning 2024.05.09.10.54.53
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 ( |
needed for SPEX
requires a version of GMP that's unavailable on Windows
Thanks for giving this a go @minrk! /cc @traversaro you might be interested |
previous windows builds used openblas
…nda-forge-pinning 2024.05.09.19.07.45
Currently stuck on CHOLMOD not finding LAPACK symbols:
(and so on for all used lapack symbols, I think) I'm currently looking at the suitesparse-for-windows project we used for 5.4 for inspiration, but what i've tried so far doesn't seem to be working. If anyone has more Windows linking experience than me, feel free to contribute. I've tried with both netlib and openblas (used in our previous windows build), producing the same result. I suspect this chunk of suitesparse-for-windows is relevant, but don't quite understand it. lapack is linked here. I also had to exclude SPEX which requires GMP 6.1.2, which appears to be unavailable on Windows. It finds 6.0.0 (I think through MPIR?), but rejects that as too old. |
FWIW, the CHOLMOD link line:
lacks any
which I suspect is the issue. I don't really understand what's causing the CHOLMOD to not link its explicitly stated dependencies with |
The cmake_minimum_required version of suitesparse 7 is 3.22 https://github.com/DrTimothyAldenDavis/SuiteSparse/blob/v7.7.0/CMakeLists.txt#L22, so the CMP0022 and CMP0023 should be set to |
For reference, I checked what vcpkg is doing and apparently they are using directly the CMake from |
Ok, I was able to build locally without any need to hardcore openblas or similar. I will comment inline with the required modifications. |
Comments added, with these modifications at least the build should end successfully (I did not checked the tests). |
Co-authored-by: Silvio Traversaro <[email protected]>
Thank you! |
@conda-forge-admin please rerender |
…nda-forge-pinning 2024.05.10.08.22.12
Problem reported upstream: DrTimothyAldenDavis/SuiteSparse#800 . |
Ok, with the latest suggest modifications everything works with mkl, but still fails with netlib due to the linking error. |
I checked this. The difference here is that the blas.lib and lapack.lib are specified by Ninja in the |
The problem is that CHOLMOD is looking for |
This seems related: https://github.com/DrTimothyAldenDavis/SuiteSparse/blob/31bdd56256b3d2a7dffaade1fbd074d48489865c/SuiteSparse_config/SuiteSparse_config.h#L538 and DrTimothyAldenDavis/SuiteSparse#722 (comment) . |
Co-authored-by: Silvio Traversaro <[email protected]>
Ok, I think I found the problem. The CMake logic for checking if fortran is available (in https://github.com/DrTimothyAldenDavis/SuiteSparse/blob/31bdd56256b3d2a7dffaade1fbd074d48489865c/LAGraph/cmake_modules/SuiteSparsePolicy.cmake#L280) somehow is not detecting flang, so the logic for handling correctly the fortran mangling in https://github.com/DrTimothyAldenDavis/SuiteSparse/blob/31bdd56256b3d2a7dffaade1fbd074d48489865c/SuiteSparse_config/CMakeLists.txt#L48 is not being used. Forcing CMake to use flang.exe seems to work fine: https://github.com/conda-forge/suitesparse-feedstock/pull/92/files#r1596642507 . |
Co-authored-by: Silvio Traversaro <[email protected]>
Co-authored-by: Silvio Traversaro <[email protected]>
LGTM, thanks @minrk @traversaro! |
Wonderful, thank you @traversaro! |
Thanks for opening the PR @minrk ! |
Awesome work! :) |
Windows builds haven't been updated since #65
here's hoping it's gotten easier since then
closes #51