haskell-jp / beginners #17 at 2021-08-27 10:51:44 +0900

再掲)
Windows PowerShell
Copyright (C) Microsoft Corporation. All rights reserved.

新しいクロスプラットフォームの PowerShell をお試しください 

PS C:\Users\toshi> wsl.exe
Welcome to Ubuntu 20.04.2 LTS (GNU/Linux 4.4.0-19041-Microsoft x86_64)

 * Documentation:  
 * Management:     
 * Support:        

  System information as of Fri Aug 27 09:50:26 JST 2021

  System load:    0.52      Processes:              7
  Usage of /home: unknown   Users logged in:        0
  Memory usage:   52%       IPv4 address for eth1:  192.168.56.1
  Swap usage:     0%        IPv4 address for wifi0: 192.168.2.100

139 updates can be installed immediately.
58 of these updates are security updates.
To see these additional updates run: apt list --upgradable


The list of available updates is more than a week old.
To check for new updates run: sudo apt update


This message is shown once a day. To disable it please create the
/home/pig_dweller/.hushlogin file.
pig_dweller@DESKTOP-IF52AIJ:/mnt/c/Users/toshi$ stack install hmatrix
Preparing to install GHC (tinfo6) to an isolated location.
This will not interfere with any system-level installation.
Already downloaded.
ghc-pkg: Couldn't open database /home/pig_dweller/.stack/programs/x86_64-linux/ghc-tinfo6-8.10.4/lib/ghc-8.10.4/package.conf.d for modification: {handle: /home/pig_dweller/.stack/programs/x86_64-linux/ghc-tinfo6-8.10.4/lib/ghc-8.10.4/package.conf.d/package.cache.lock}: hLock: invalid argument (Invalid argument)
make[1]: *** [: install_packages] Error 1
make: *** [Makefile:51: install] Error 2
Received ExitFailure 2 when running
Raw command: /usr/bin/make install
Run from: /home/pig_dweller/.stack/programs/x86_64-linux/ghc-tinfo6-8.10.4.temp/ghc-8.10.4/


Error: Error encountered while installing GHC with
         make install
         run in /home/pig_dweller/.stack/programs/x86_64-linux/ghc-tinfo6-8.10.4.temp/ghc-8.10.4/

       The following directories may now contain files, but won't be used by stack:
         - /home/pig_dweller/.stack/programs/x86_64-linux/ghc-tinfo6-8.10.4.temp/
         - /home/pig_dweller/.stack/programs/x86_64-linux/ghc-tinfo6-8.10.4/

       For more information consider rerunning with --verbose flag

Installing GHC ...
pig_dweller@DESKTOP-IF52AIJ:/mnt/c/Users/toshi$

このえらーのないようをおしえてください
https://haskell-jp.slack.com/archives/CR2TETE5R/p1626432250123200 とよく似たケースに見えるのですが、WSLのバージョンはわかりますか?

あと、「再掲」と言いつつ一昨日とエラーメッセージも環境も異なっているのが気になります :confused: 私の回答のあとどうなったのかも教えていただいてませんし。
https://haskell-jp.slack.com/archives/CR2TETE5R/p1629865592018300
内容は分かりませんが、WSL2にすると治るとかいう謎が結構あるらしいです
みなさんありがとうございます。がんばってみます
@noshigoro DMで詳しい解説ありがとうございました。でも私にしか見えないので、原則パブリックな場で返事をください。特にこの場合、端から見て私の指摘に全く答えていないように見えるので心象が若干悪いです。

本筋と関係ない話はこの辺にして、一つ補足させてください。次Windowsで試すときはcygwinを使うとのことでしたが、cygwin以外にもWindows上で直接(WSLなど仮想マシンを使わずに)Unix由来のソフトウェアを動かす仕組みとしてMSYS2と言うのがあります。実はWindows版GHCが間接的に依存している関係で、stackでGHCをインストールすると自動でにMSYS2もインストールされます。なので実は知らないうちにnoshigoroさんもMSYS2をすでに使っている可能性があります。

で、hmatrixについて私も調べてみたんですが、なるほど確かにdllはともかく.hファイルのありかが分かりづらいですね...:cold_sweat:
そこで「windows hmatrix」で検索してみたところ、 https://github.com/haskell-numerics/hmatrix/blob/master/INSTALL.md が見つかりました。
試したところ、こちらの方法でも残念ながら、stackがインストールするMSYS2が古すぎるためか https://github.com/roswell/roswell/issues/469 と似た問題が起きてインストールできませんでしたが、報告まで。