Comment construire hmasortingx avec BLAS et LAPACK sous Windows?

Windows 10 x64 Cabal 1.22

Je suis les étapes suivantes dans la section Windows https://github.com/AlbertoRuiz/hmasortingx/blob/master/INSTALL.md

J’ai téléchargé des sources hmasortingx et gsl-lapack-windows.zip. Lorsque j’essaie d’installer hmasortingx avec:

D: \ Projects \ workspace \ hmasortingx-0.16.1.5> installation de cabal –extra-include-dirs = D: \ Projects \ workspace \ gsl-lapack-windows \ –extra-lib-dirs = d: \ Projects \ workspace \ gsl-lapack-windows \

J’ai ce message que je ne peux toujours pas résoudre:

Configuration de hmasortingx-0.16.1.5 … Impossible d’installer le journal de génération hmasortingx-0.16.1.5 (D: \ Projects \ workspace \ hmasortingx-0.16.1.5.cabal-sandbox \ logs \ hmasortingx-0.16.1.5.log): Configuration de hmasortingx -0.16.1.5 … setup-Simple-Cabal-1.22.4.0-x86_64-windows-ghc-7.10.2.exe: dépendances manquantes sur les bibliothèques étrangères: * Bibliothèques C manquantes: blas, lapack, blas, lapack Ce problème peut généralement être résolu en installant les paquets système qui fournissent ces bibliothèques (vous pouvez avoir besoin des versions “-dev”). Si les bibliothèques sont déjà installées mais dans un emplacement non standard, vous pouvez utiliser les indicateurs –extra-include-dirs = et –extra-lib-dirs = pour indiquer où elles se trouvent. cabal: Erreur: certains paquets n’ont pas pu être installés: hmasortingx-0.16.1.5 a échoué pendant l’étape de configuration. L’exception était: ExitFailure 1

“-dev versions” Je pense que c’est seulement pour les OS basés sur * nix. Dans les dossiers que je donne à cabal, il y a blas.dll et lapack.dll.

Quel pourrait être le problème?

    Essaye ça:

    1. Installez mingw depuis https://sourceforge.net/projects/mingw-w64/files/ , dans mon cas x86_64-posix-seh ). Nous avons juste besoin de libgfortran-3.dll , qui n’est pas présent dans ghc’s mingw. Ou vous pouvez l’obtenir ici: http://icl.cs.utk.edu/lapack-for-windows/libraries/VisualStudio/3.6.0/Dynamic-MINGW/Win64/libgfortran-3.dll (remplacez Win64 par Win32 en url si nécessaire)
    2. Obtenez les binarys OpenBLAS à partir de https://sourceforge.net/projects/openblas/files/ (dans mon cas, Win64-int32 ).
    3. Placez libopenblas.dll et libgfortran-3.dll dans un dossier, dans mon cas C:\Programs\lib
    4. cabal install hmasortingx --flags=openblas --extra-lib-dirs=C:\Programs\lib

    C’est tout. Vous devez également passer des ghci à ghci (toutes les libs doivent être dans PATH, donc dans mon cas, ghc mingw\bin et C:\Programs\lib sont dans PATH):

    ghci -llibopenblas -llibgfortran-3 -llibgcc_s_seh-1

    libgcc_s_seh-1.dll est dans le mingw de ghc (dans mon cas: C:\Programs\ghc\ghc-8.0.1\mingw\bin )

    REMARQUE: testé avec ghc-8.0.1
    MISE À JOUR: j’ai trouvé que maintenant cela peut être fait en moins d’étapes