FC2ブログ

cygwin+mingwでOpenGLコンパイル

CygwinのmingwでOpenGLをコンパイルしたい。
環境を整えた上で、以下のフラグで出来た。
gcc -mno-cygwin -mwindows -o hello hello.c 
  -DWIN32 -lglut32 -lglu32 -lopengl32
  1. -mono-cygwinは、mingwでコンパイルするように指定
  2. -mwindowsは、cmd.exeのコンソールの表示を抑制する
  3. -DWIN32は、なくてもいいと思う(ヘッダに該当マクロが見当らない)
  4. -lglut32 -lglu32 -lopengl32は、この順番で
環境は、普通にCygwinをsetup.exeにてインストール。パッケージは、gccと mingwとopenglをインストール。
GLUTは、GLUT - The OpenGL Utility Toolkitか らPre-compiled Win32 for Intel GLUT 3.7 DLLs for Windows 95 & NTをダウンロード して、DLLをパスの通った場所に配置。
GLUTは、2系統のバイナリが配布されているが上記のランタイムじゃないと無 限ループ?になってOpenGLアプリが終了しない。

どこから落としたか分からなくなったが、これPre-compiled Win32 for Intel GLUT 3.7 DLLs for Windows 95 & NT glutdlls37beta.zip のモジュールを使う と Close しても大丈夫だった。

■参考

CygwinでOpenGL/Glutを使う方法

とっかかり。

OpenGL によるクロスプラットフォームなGUIプログラミング(pc覚え書き)

最近の記事で、同じことをしている。現在はこのやり方に辿り着くとい うことか。すぐに陳腐化するかもしれないけれど。

■MAlib

Nate Robins - OpenGL - GLUT for Win32のDLLで、終了しないと言及されている。 同様の事例を探してみたけど、ここくらいしかない。このDLLでみなさ んちゃんと終了しているのでしょうか。

■メモ

チュートリアルとかコピペで試してるときに作ったMakefile。
(Cygwin+Mingw、glutのライブラリとかはカレント)
CC       = gcc
SOURCES  = $(wildcard *.c)
TARGETS  = $(patsubst %.c,%.exe,$(SOURCES))
#TARGETS  = $(SOURCES:.c=.exe)
CFLAGS   = -mno-cygwin -DWIN32
LDFLAGS  = -lglut32 -lglu32 -lopengl32
INCLUDES = -I.

all: $(TARGETS)

%.exe: %.c
        $(CC) $(CFLAGS) -o $@ $< $(INCLUDES) $(LDFLAGS)
スポンサーサイト



この記事へのトラックバックURL

http://memolet.blog22.fc2.com/tb.php/715-c4e85c13

この記事へのトラックバック

この記事へのコメント