私の(64ビット)Windows 10コンピュータにhmatrixをインストールしようとしていました。 "Windows"と "Alternative Windows Build"の指示を含むhereの指示を含む多くの可能な解決策を検索して試した後、私はこのReddit threadに与えられた行動のコースを追求することに決めました。私はMSYS2シェルにコマンドでWindows 10でMSYS2を使用してhmatrixをインストールする際に問題が発生しました
cabal install hmatrix -fopenblas --extra-lib-dir=${c:\msys64\mingw64\bin} --extra-include-dir=${c:\msys64\mingw64\include}
を入力すると
ただし、以下のログが与えられます。
Resolving dependencies...
Configuring hmatrix-0.17.0.2...
Failed to install hmatrix-0.17.0.2
Build log (C:\Users\Christian\AppData\Roaming\cabal\logs\hmatrix-0.17.0.2.log):
Configuring hmatrix-0.17.0.2...
cabal.exe: Missing dependency on a foreign library:
* Missing C library: libopenblas
This problem can usually be solved by installing the system package that
provides this library (you may need the "-dev" version). If the library is
already installed but in a non-standard location then you can use the flags
--extra-include-dirs= and --extra-lib-dirs= to specify where it is.
cabal: Leaving directory 'C:\msys64\tmp\cabal-tmp-4244\hmatrix-0.17.0.2'
cabal.exe: Error: some packages failed to install:
hmatrix-0.17.0.2 failed during the configure step. The exception was:
ExitFailure 1
をしかし、私はディレクトリc:\msys64\mingw64\bin
を確認したときに、私はlibopenblas.dll
ことがわかりそこにある。私はキャバルがそれを見つけるように見えない理由を知らない。
これはなぜ機能しないのか、何をすべきかについての洞察はありますか?
UPDATE: ファイルlibopenblas.dll.a
とlibopenblas.a
はディレクトリc:\msys64\mingw64\lib
です。どういうわけかこのディレクトリも含める必要がありますか? (もしそうなら、私はどうすればいいでしょうか)
また、アレックス・ヴォロビエフのコメントにファイルをダウンロードし、.dllsの場合はc:\msys64\mingw64\bin
、.libの場合はc:\msys64\mingw64\lib
に入れます。ヘッダーファイルは既にc:\msys64\include\openblas
に含まれていました。
私は\lib
で\bin
を切り替えて\include\openblas
と\include
を切り替えるなど、これらの変更を、作った後、元の記事にあるコマンドのいくつかのバリエーションを試してみましたが、それらのすべてが、まだ同じエラーを与えます。
dllでライブラリをコンパイルするには十分ではありません。開発用ファイルには、C++ヘッダと.libファイルが必要です。ここをクリックhttp://icl.cs.utk.edu/lapack-for-windows/lapack/#libraries_mingw –
私はファイルをダウンロードしようとしたが、私の編集で上記のように進んだが、同じエラーが出る。 –