コンパイルしてみたり、実行ファイルを作成するとき
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ライブラリに必要なリンカ、マクロを確認します。
リンカ、マクロについてはこちらに記載されています。
という訳で必要な情報は
-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」に移動。
そこで、以下を入力します。
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」の中を以下のようにします。
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」を入力します。
以上で実行ファイルができると思います。
詳しい方突っ込みお願いします。