2015-09-06 3 views
3

для Windows 10 x64 Cabal 1,22Как построить hmatrix с BLAS и LAPACK под Windows?

Я следующие шаги в разделе Windows, https://github.com/AlbertoRuiz/hmatrix/blob/master/INSTALL.md

Скачал источники hmatrix и gsl-lapack-windows.zip. Когда я пытаюсь установить hmatrix с:

D:\Projects\workspace\hmatrix-0.16.1.5>cabal install --extra-include-dirs=D:\Projects\workspace\gsl-lapack-windows\ --extra-lib-dirs=d:\Projects\workspace\gsl-lapack-windows\

Я получил сообщение, что я до сих пор не могу решить:

Configuring hmatrix-0.16.1.5... Failed to install hmatrix-0.16.1.5 Build log ( D:\Projects\workspace\hmatrix-0.16.1.5.cabal-sandbox\logs\hmatrix-0.16.1.5.log ): Configuring hmatrix-0.16.1.5... setup-Simple-Cabal-1.22.4.0-x86_64-windows-ghc-7.10.2.exe: Missing dependencies on foreign libraries: * Missing C libraries: blas, lapack, blas, lapack This problem can usually be solved by installing the system packages that provide these libraries (you may need the "-dev" versions). If the libraries are already installed but in a non-standard location then you can use the flags --extra-include-dirs= and --extra-lib-dirs= to specify where they are. cabal: Error: some packages failed to install: hmatrix-0.16.1.5 failed during the configure step. The exception was: ExitFailure 1

«-dev версии» Я думаю, что это только для * операционок на основе Никса. В папках, которые я даю в cabal, есть blas.dll и lapack.dll.

В чем может быть проблема?

+0

Я просто столкнулся с этой проблемой. Кажется, мы не единственные. Удалось ли вам это исправить? Также см .: https://github.com/albertoruiz/hmatrix/issues/125 – TheCriticalImperitive

+0

Я исправил немного поддержки OpenBLAS. Но все еще есть проблемы с компиляцией: https://github.com/albertoruiz/hmatrix/pull/147 –

ответ

1

Попробуйте это:

  1. Установка MinGW из https://sourceforge.net/projects/mingw-w64/files/, в моем случае x86_64-posix-seh). Нам нужно всего лишь libgfortran-3.dll, которого нет в ghc's mingw. Или вы можете получить его отсюда: http://icl.cs.utk.edu/lapack-for-windows/libraries/VisualStudio/3.6.0/Dynamic-MINGW/Win64/libgfortran-3.dll (При необходимости замените Win64 на Win32 в URL-адресе)
  2. Получите двоичные файлы OpenBLAS от https://sourceforge.net/projects/openblas/files/ (в моем случае Win64-int32).
  3. Место libopenblas.dll и libgfortran-3.dll в какую-нибудь папку, в моем случае C:\Programs\lib
  4. cabal install hmatrix --flags=openblas --extra-lib-dirs=C:\Programs\lib

Это все. Вы также должны пройти LIBS в ghci (все ЛИЭС должны быть в PATH, так что в моем случае GHC, mingw\bin и C:\Programs\lib в PATH):

ghci -llibopenblas -llibgfortran-3 -llibgcc_s_seh-1

где libgcc_s_seh-1.dll находится в MinGW GHC (в моем случае: C:\Programs\ghc\ghc-8.0.1\mingw\bin)

ПРИМЕЧАНИЕ: протестирована с GHC-8.0.1
UPDATE: я нашел, что теперь это можно сделать меньше шагов

+0

2.5. запустить 'make'. – holdenlee

+0

Я получаю 'Missing C library: libopenblas' при запуске 6. – holdenlee

+0

Убедитесь, что у вас есть заголовки blas в ваших добавочных каталогах В моем случае: 'd: \ Programs \ openblas \ include' есть' cblas.h' , 'f77blas.h' и т. д. –

Смежные вопросы