Edited at

stack経由でghcをインストール(ubuntu)

More than 3 years have passed since last update.

haskellの強力なビルドツールstackがリリースされました。

stackにはghcをインストールする機能もあるので、これを使えばhaskell-platformを使うよりもghcを使える環境を整えるのが楽かもしれません。

というわけで、ghcなど、haskell関連の準備が全くない状態から、stackを使ってghcをインストールする手順をまとめました(といっても大したことはしていませんが)。


環境・バージョンなど


  • stack-0.1

  • ghc-7.8.4, 7.10.1

  • OS: lubuntu 15.04 64bit

インストールするghcは7.8.4です。

7.10.1もインストールできましたが、現状ではstackのデフォルトは7.8.4のようなので7.8.4にしています。


cabal-installについて

stackは強力なツールになりそうですが、まだまだcabal-installの出番もありそうです。ということでcabal-installもインストールしています。

この手順でインストールされるcabal-installの現時点でのデフォルトバージョンは1.18.1.0になります。もっと高いバージョンが必要なら、別途cabal update; cabal install cabal-installなどのようにして高いバージョンをインストールしてください。


手順


install_haskell_via_stack.sh

#!/bin/bash

set -e

PROF_FILE="/etc/profile.d/haskell.sh"
GHC_VERSION="7.8.4"
# GHC_VERSION="7.10.1"

echo "-------- install stack --------"
wget -q -O- http://download.fpcomplete.com/ubuntu/fpco.key | sudo apt-key add -
echo 'deb http://download.fpcomplete.com/ubuntu/vivid stable main'|sudo tee /etc/apt/sources.list.d/fpco.list
sudo apt-get update
sudo apt-get install stack -y

echo "-------- update package informations --------"
stack update

echo "-------- install ghc-${GHC_VERSION} -------"
stack setup "${GHC_VERSION}"

echo "-------- install cabal-install -------"
stack install cabal-install

# パスは自分の使っている設定ファイルなどに追加してください。
GHC_PATH="${HOME}/.stack/programs/x86_64-linux/ghc-${GHC_VERSION}/bin"
LOCAL_PATH="${HOME}/.local/bin"

PATH="${GHC_PATH}:${PATH}"
PATH="${LOCAL_PATH}:${PATH}"
export PATH

echo "-------- check versions ---------"
ghc --version
cabal --version



ubuntu以外の環境について

Windowsでも使用してみましたが、問題なく使用できました。

ただ、Cygwin上で使おうとするといろいろ問題が起きることもあるので注意してください。

(stackに関係なく、haskell-platformでも問題が起きるときは起きます)


参考