MinGWでDXライブラリ

トントン
記事: 100
登録日時: 14年前

MinGWでDXライブラリ

投稿記事 by トントン » 13年前

DXライブラリで作られたプログラムを
コンパイルしてみたり、実行ファイルを作成するとき
VC++を使うと思います。
VC++自体、とても良いツールなんですけど
起動が遅いんですよね。。。なので簡単に確認したい時などは不便。
というわけで最近は簡単な動作確認についてはgccを使用しています。
# デバッグするときは、VC++が楽ですけど。。。
# コマンドプロンプトからVC++を使用してもできそうですけど

今回は、MinGW用のDXライブラリを使用する方法を書きます。

# ちなみにgccのインストール方法は書きません。
# 自己責任でお願いしますね

以下、手順を。

1.環境準備
まず、どこでも良いので
フォルダを作成します。
(今回、作成したフォルダを「SampleDxLib」とします。)
また、その作成したフォルダSampleDxLibの中に「dxlib」というフォルダを作成します。
次にこちらから
DXライブラリ Gnu C++用(Ver3.08c)をダウンロード、展開します。
展開されたフォルダの中に「プロジェクトに追加すべきファイル_GCC(MinGW)用」
というフォルダがあると思うので、その中にあるファイルを全て
先ほど作成した「dxlib」の中にコピーします。
コピーが終わったら「SampleDxLib」の中に実行ファイルを生成したいソースファイル(今回はmain.cpp)を置きます。

2.gcc(g++)の設定
まず、DXライブラリに必要なリンカ、マクロを確認します。
リンカ、マクロについてはこちらに記載されています。
という訳で必要な情報は

CODE:

-DDX_GCC_COMPILE
-DDX_NON_INLINE_ASM

-lDxLib
-lDxUseCLib
-lDxDrawFunc
-ljpeg
-lpng
-lzlib
-ltheora_static
-lvorbis_static
-lvorbisfile_static
-logg_static
-lbulletdynamics
-lbulletcollision
-lbulletmath
プラス
-mwindows
になります。

必要な情報もわかったことなので後は
コマンドプロンプトで「cd」コマンドで「SampleDxLib」に移動。
そこで、以下を入力します。

CODE:

g++ -o sample.exe main.cpp -DDX_GCC_COMPILE -DDX_NON_INLINE_ASM -Idxlib -Ldxlib -lDxLib -lDxUseCLib -lDxDrawFunc -ljpeg -lpng -lzlib -ltheora_static -lvorbis_static -lvorbisfile_static -logg_static -lbulletdynamics -lbulletcollision -lbulletmath -mwindows
無事に実行できましたか?
できたら良かったです。

3.makefileを使おう
しかし、上記コマンドは長い。。。
いちいちコピペするのも面倒ですよね。
なので、makefileを作成して楽をしましょう。
まず、「SampleDxLib」の中に「makefile」というファイルを作成します。
次に「makefile」の中を以下のようにします。

CODE:

dxlib_sample:
	g++ -o sample.exe main.cpp\
		-DDX_GCC_COMPILE\
		-DDX_NON_INLINE_ASM\
		-Idxlib -Ldxlib \
		-lDxLib\
		-lDxUseCLib\
		-lDxDrawFunc\
		-ljpeg\
		-lpng\
		-lzlib\
		-ltheora_static\
		-lvorbis_static\
		-lvorbisfile_static\
		-logg_static\
		-lbulletdynamics\
		-lbulletcollision\
		-lbulletmath\
		-mwindows
# 各行の先頭のスペースはタブでなければいけないのでスペースになっていたらタブに直してください。
# makefileの中身をきちんと書けない人なので詳細(マクロとか)は勉強した後に書こうと思います。

あとは、「make」コマンドを実行するだけなのですが
windowsだとデフォルトではmakeコマンドがないので、makeに相当するものを入れてあげなければなりません。
今回、ここでは「Make for Windows」を使用したいと思います。
(本当は簡単なのでnmakeの導入にしたかったのですが、何故かダウンロード先が消えていましたorz)

ここからDownloadのSourcesをダウンロード。
vc++でmake_msvc_net2003.slnを開いて自前でビルドしていまいます。
(構成はリリースにしてね。)
ビルドが通ったらmake_msvc.net2003.exeというファイルができると思うので
「make.exe」にリネーム、そして環境変数でパスを通します。
(恐らくリネームしても問題ないだろうと思っている。)

後はコマンドプロンプト上でSampleDxLibに移動。
「make」を入力します。

以上で実行ファイルができると思います。




詳しい方突っ込みお願いします。
最後に編集したユーザー トントン on 2012年8月31日(金) 01:45 [ 編集 1 回目 ]

アバター
h2so5
副管理人
記事: 2212
登録日時: 14年前

Re: MinGWでDXライブラリ

投稿記事 by h2so5 » 13年前

MinGWをインストールしているならmakeは入っているのでは?
mingw32-make.exeというのがあるようです。

あと、MSYSもインストールしているならそっちのmakeも使えます。

トントン
記事: 100
登録日時: 14年前

Re: MinGWでDXライブラリ

投稿記事 by トントン » 13年前

h2so5 さんが書きました:MinGWをインストールしているならmakeは入っているのでは?
mingw32-make.exeというのがあるようです。

あと、MSYSもインストールしているならそっちのmakeも使えます。
そうだったんですね! 知りませんでした。
さっそくMSYSの方に切り替えました。
情報ありがとうございます。