« 2010年1月 | トップページ | 2010年3月 »

2010年2月の記事

2010年2月13日 (土)

cygwinのMinGWモード用にMartin Payneのfreeglut for Windowsをセットアップする

あらかじめ、cygwinのopengl開発パッケージ(X11カテゴリのlibGL-devel)をインストールしておく。(<GL/gl.h>が必要なため。)

Martin Payneのfreeglut Windows Development Librariesのページからfreeglut 2.6.0 MinGW Package (freeglut-MinGW-2.6.0-3.mp.zip) をダウンロードして、DLL、インクルードファイル、ライブラリファイルを取り出し、以下のように配置する。

c:\cygwin\usr\local\bin\freeglut.dll
c:\cygwin\usr\local\include\mingw\GL\freeglut.h
c:\cygwin\usr\local\include\mingw\GL\freeglut_ext.h
c:\cygwin\usr\local\include\mingw\GL\freeglut_std.h
c:\cygwin\usr\local\include\mingw\GL\glut.h
c:\cygwin\usr\local\lib\mingw\libfreeglut.a
c:\cygwin\usr\local\lib\mingw\libgreeglut_static.a

(ただし、cygwinがデフォルトのc:\cygwin\にインストールされていることが前提。)

以下のようにしてシンボリックリンクを張る。

cd /usr/lib/mingw/
ln -s ../../local/lib/mingw/libfreeglut.a .
ln -s ../../local/lib/mingw/libfreeglut_static.a .
ln -s ../../local/lib/mingw/libfreeglut.a libglut.a

こうするとデフォルトのパスが利くので、cygwinのシェルから、Martin PayneのReadMe.txtに書いてある方法よりも多少簡単にコンパイルして実行できる。こんな感じ:

gcc -mno-cygwin -c test.c 
gcc -mno-cygwin -o test.exe test.o -lfreeglut -lopengl32 -Wl,--subsystem,windows
./test

(もちろん、cygwinのシェルから実行するだけなら、-Wl,--subsystem,windowsはつけなくてもいい。)

« 2010年1月 | トップページ | 2010年3月 »