Rasberry Pi3 (ARMv7)にhaskell-stackをインストールするを参考にさせていただきました.
環境
Raspberry Pi 2 Model B (ARMv7, 1GB RAM)
OS: Raspbian Jessie
手順
-
いずれかの方法でstack(1.1.2)をインストールする.
- Debianのリポジトリからインストール
-
Rasberry Pi3 (ARMv7)にhaskell-stackをインストールするを参考にDebianの
stretch
リポジトリを追加. -
aptからhaskell-stackをインストール.
$ sudo apt install haskell-stack
-
- バイナリパッケージ版のインストール
- githubからARM向けビルドをダウンロード.
- バイナリをパスの通ったディレクトリに配置する.
- Debianのリポジトリからインストール
-
バイナリパッケージ版のGHC7.10.3をインストールする.
$ ./configure --prefix=/home/pi/.dist $ make install
-
/tmp
をRAMディスクに置いている場合は, 通常のディスクへと戻す.
/tmp
がRAMディスクに置いてあると
hPutBuf: resource exhausted (No space left on device)
や
LLVM ERROR: IO failure on output stream.
といったエラーがずらずらと出てきます. (但し, Hello worldぐらいならコンパイルできる模様)
何故かダメだったもの
DebianパッケージのGHC 7.10.3の場合は, 次のようなエラーメッセージを吐いてビルドできませんでした。
/tmp/ghc50d2_0/ghc_6.s: Assembler messages:
/tmp/ghc50d2_0/ghc_6.s:105:0:
Error: selected processor does not support `movw r3,:lower16:stg_bh_upd_frame_info' in ARM mode
...
参考リンク
Cross-compile for ARM processors support · Issue #1332 · commercialhaskell/stack
Filling /tmp results in a crash · Issue #623 · commercialhaskell/stack