wxHaskellでMediaCtrlを使用する

gdgdやりながら何とか動いた時の手順をまとめた自分用のメモなので、正規のやり方では無い可能性があります。
なお、ubuntu11.04での話です。

wxWidgets

./configure --enable-mediactrl --enable-unicode
make
make install

でインストール。ここまで問題なし。

wxHaskell

wxHaskellのMediaCtrlはデフォルトで無効になっているので、インストールする際に有効にする必要があります。
wxモジュールはwxWidgetsをラップしているwxcoreを用いて高レベルインターフェースを提供しているので、今回いじる箇所はwxcoreです。
以下手順

  1. wxcoreのtar玉をダウンロードし、展開します。
  2. Setup.hsをテキストエディタで開きます。
  3. 50行目(readProcess "wc-config"のある行)の["--libs","--cppflags"]を["--libs","std,media","--cppflags"]に変更します。
  4. 63行目の["-DwxcREFUSE_MEDIACTRL"]を["-DwxUSE_MEDIACTRL"]へ変更します。
  5. Setup.hsを保存し、cabal installします。
  6. cabal install wxします。
  7. お疲れ様でした。