Hatena::Grouphaskell

[ pred x | x <- "Ibtlfmm!ojllj" ] RSSフィード

2009-06-13

WindowsのGHC 6.10.2でのGLUTバインディングのビルド 02:45

6.10になってからか、なぜかGHCOpenGLが付属しなくなった。

試してみたら(運よく)できたのでメモしておく。

clを使わなくともghcに付属のMinGW gccで出来ればいいと思うのだが、単純に試してもうまくいかなかった。

OpenGLバインディングをビルド

コマンドプロンプトでコンパイルする。

Platform SDKをC:\PROGRA~1\MIC977~1にインストールしたとする。

  • c:\program files\git\binにpathを通しておく
  • OpenGL.cabalに追記
extra-libraries: opengl32, glu32
extra-lib-dirs: C:\PROGRA~1\MIC977~1\Lib
extra-include-dirs: C:\PROGRA~1\MIC977~1\Include
  • runghc Setup.hs configure -p
  • runghc Setup.hs build
    • うまくいけばそれに越したことはない
  • buildがうまくいかなければ、include\HsOpenGLConfig.hに追記
    • 内容は検索して拾ってきたもの
#define HTYPE_GLBITFIELD Word32
#define HTYPE_GLBOOLEAN Word8
#define HTYPE_GLBYTE Int8
#define HTYPE_GLCLAMPD Double
#define HTYPE_GLCLAMPF Float
#define HTYPE_GLDOUBLE Double
#define HTYPE_GLENUM Word32
#define HTYPE_GLFLOAT Float
#define HTYPE_GLINT Int32
#define HTYPE_GLSHORT Int16
#define HTYPE_GLSIZEI Int32
#define HTYPE_GLUBYTE Word8
#define HTYPE_GLUINT Word32
#define HTYPE_GLUSHORT Word16
  • runghc Setup.hs install

GLUTバインディングをビルド

GLUTのバイナリはC:\local\glut-3.7.6-binに置いたものとする。

  • GLUT.cabalに追記 (行頭の空白含む)
  extra-libraries: glut32
  extra-lib-dirs: C:\local\glut-3.7.6-bin
  • runghc Setup.hs configure -p
  • runghc Setup.hs build
  • runghc Setup.hs install

うまくいってるか確認

GLUT-2.1.2.1\examples\RedBookにいろいろサンプルがあるのでrunghcしてみる。

トラックバック - http://haskell.g.hatena.ne.jp/illillli/20090613