ghc と cabal-install を入れる
GHC と cabal-install をインストールしてみた
Haskell.org から下記のファイルをダウンロードする。
それぞれのファイルを展開し、GHC は go と同じように /opt
以下にインストールして /opt/ghc/bin
を環境変数のパスに追加。cabal-install
はバイナリだったので解凍して、良くわからんけれども /opt/ghc/bin
以下にコピーしておいた。cabal update
でリストを更新。
3 年前に作成した getsurei.hs
を動かすために cabal install utf8-string
でライブラリをインストールして実行したのだけど、文字化けをしている。何でなん?
調べてみると、最近の GHC は標準で日本語が表示(というか utf8 を使うことが)できるようになっているそうだ。
必要ないものは使わないということで、import System.IO.UTF8
をコメントアウトして、System.IO.UTF8.putStrLn
としていた出力部分をただの putStrLn
に修正。これでとりあえず runhaskell getsurei.hs
で月齢を表示することができた。
cabal と cabal-install のインストールをやり直し
cabal
コマンドのサイズが 15MB もあって、ぐぬぬだったのでインストールをやり直した。Cabal-1.20.0.2.tar.gz をダウンロードして
ghc -threaded --make Setup ./Setup configure --user ./Setup build ./Setup install
でインストール。その後、
cabal update cabal install cabal-install
すると、./cabal/bin
以下に cabal
の実行ファイルがインストールされる。環境変数に ~/.cabal/bin
を追加して cabal -V
で確認してみると、
> /opt/ghc/bin/cabal -V cabal-install version 1.20.0.3 using version 1.20.0.1 of the Cabal library
> ~/.cabal/bin/cabal -V cabal-install version 1.20.0.3 using version 1.20.0.2 of the Cabal library
のようになっていて、後から入れが方が library のバージョンが新しい。でもバイナリのサイズが 28MB にもなってる。これじゃ当初の目論見と正反対の結果になっちゃった。