2005 年 11 月頃 Microsoft は Visual C++ 2005 Express を 1 年間に限り無料配布することを発表しましたが、 2006 年に入ってから配布期限の制限を撤廃し、いつでも誰もが自由に利用できるようになりました。
Express 版は Standard 版、あるいは Professional 版の機能制限版のようですが、簡単なプログラムであれば これで十分に作成することが出来ます。以下これに関しての紹介です。簡単な C 言語プログラムと OpenGL プログラムをビルドし、実行するまでです。
Express 版には MFC は付いていませんから、単に C 言語で使用するだけです。
以下、Microsoft 社のホームページで順番にリンクをたどることができますが、念のためトップの頁から記述しています。
一番下の頁で Visual C++ 2005 Express Edition をダウンロードすると、vc.iso というファイルが ダウンロードされますが、600 メガ程度あるため少し時間がかかります。
ダウンロードされたファイルは CD イメージです。これを CD-R などに書き込んで使用します。 書き込みソフトは有料のものが多いようですが、探してみると無料のものもあります。
窓の杜 - CD/DVDライティング
に紹介している「ISO Recorder for Windows XP」を使用してみました。 これには 2 種類あって Windows Xp SP2 用のものと、それ以前の Windows Xp 用のものがあります。 私はサービスパック 2 のパッチをあてているので「ISO Recorder for Windows XP SP2」 を使用しました。窓の杜も最終的には作者のページへのリンクが張ってあるだけです。
ISO RECORDER v2
このページの上のほうの緑色で書いた「Here is the current build」をクリックすると ダウンロードされます。ファイル名は ISORecorderV2RC1.msi です。これは Windows インストーラでエクスプローラでダブルクリックしてインストールすることができます。
インストールするとすぐ使えるようになります。ブランク CD-R をセットして、 先にダウンロードした vc.iso をエクスプローラから右クリックすると 次のメニューが登場しますから、「Copy image to CD」を選択するのみです。
できあがった CD-R は、インストール用の CD になっているため、セットしてふたを 閉めるだけでインストーラが起動します。Visual C++ 2005 Express のインストール自身は ごくありきたりなものですが、次のページで表示をあらかじめ見ておくほうが良いかもしれません。
Visual C++ Express について
また、このページに紹介してあるように「グラフィック IDE」だけをインストールするほうが無難です。 でかいので、全部インストールすると時間がかかりすぎます。
ここでは単に C 言語のプログラムを組むことだけを目的とします。 メニューのファイル/新規作成/プロジェクトを選びます。
そこで、プロジェクトの種類、テンプレートを
| プロジェクトの種類 | 全般 |
|---|---|
| テンプレート | 空のプロジェクト |
のように指定して、プロジェクト名を適当につけ (プロジェクト名はフォルダ名になります)、 OK を選びます。(このとき作成「場所」も変更可能ですが、どこに作成されるか確認するだけの方が簡単です。)
すると、左のほうの「ソリューション エクスプローラ」と称するものが次のような 表示になります。(これはプロジェクト名を MyProject とした場合の表示です。)
更に、この「ソリューション エクスプローラ」の「ソースファイル」の上で 右クリックします。メニューから「追加」/「新しい項目の追加」を選びます。
ここで「カテゴリ」と「テンプレート」を次のように指定し、ファイル名として例えば sample.c と します。(C++ ファイルを選択していても拡張子が c のファイルを指定できます。)
| カテゴリ | Visual C++/コード |
|---|---|
| テンプレート | C++ ファイル (cpp) |
以上でコード入力が出来るようになります。次のように打ち込んで見ましょう。
#include <stdio.h>
void main(){
printf("Hello World!\n");
}
間違いなく打ち込んだら、メニューの「ビルド」/「....のビルド」 (... はプロジェクト名) を選択してビルドします。首尾よくビルドできたらメニューの「デバッグ」/「デバッグなしで開始」 を選んで実行します。DOS 窓が開いて、Hello World! が表示されるはずです。
OpenGL は Visual C++ 2005 Express 版のみでは実行できません。 PlatformSDK が必要となります。PlatFormSDK のインストールに関しても
Visual C++ Express について
に説明があります。最初はこれに気がつきませんでした。もっぱら英文の頁で Express 版と OpenGL に関連すること を調べていたためです。上の頁は Win32 API アプリケーションを動かすことを目的にしているようですから 私の目的よりはずっと一般的ですが、結果はほぼ同じようなことになっていることに気がつきました。 以下、かなり重複すると思いますが、Visual C++ 2005 Express 版で OpenGL を動かすことを目的にします。
Windows Server 2003 R2 Platform SDK ISO Download
を開くと Download と書いたボタンがあるので、ボタンを押すと 次のような長い名前のファイルがダウンロードされます。(400 メガ近くあります。)
5.2.3790.2075.51.PlatformSDK_Svr2003R2_rtm.img
これも CD イメージです。このままだと、Express 版で使用した「ISO RECORCER v2」 が認識してくれません。拡張子を img から iso に変更すると、 Express 版と同様に CD に焼いてインストールディスクを作成してくれます。 (一般に単に拡張子を変更したぐらいでうまくいくとは到底思えませんが、 この場合たまたまうまくいきました。)
インストールする前にインストールフォルダを作成します。 これは Visual Studio 2003 .NET と同じような使用環境にするためです。 Express 版のインストールフォルダ
c:\Program Files\Microsoft Visual Studio 8
の中にあるフォルダ VC の中にフォルダ PlatformSDK を作成します。 PlatformSDK をインストールするときに、インストール先をここに指定します。
インストールするときに、選択肢が 2 つ登場します。Custom と Typical です。 初期条件では Typical となっていますが、このままインストールすると とても巨大になり、インストールするのにかなり時間がかかります。 そこで Custom を選び、オプション選択の画面で
Microsoft Windows Core SDK
のみを選びます。しかしこの中にも不必要なものがあります (例えば 64 ビット用のものや sample, source など)。 不必要なもの全部に×をつけて、インストールします。
Visual C++ が OpenGL のヘッダーなどを見つけれないといけないので, メニューから順に
「ツール」/「オプション」/「プロジェクトおよびソリューション」/「VC++ディレクトリ」
を選びます。ここでインクルードファイル と ライブラリファイル に、PlatformSDK のディレクトリーを追加しないといけません。これをするために 右上の「ディレクトリを表示するプロジェクト」と書いてあるコンボボックスでまず「インクルードファイル」 を選択します。下にディレクトリの一覧が表示されます。最初の空白行をマウスでクリックすると 右に ... が付いたボタンが表示され、これをクリックして、PlatformSDK の include フォルダを指定します。これでインクルードファイルに PlatformSDK の include フォルダが追加されました。ライブラリファイルに関しても同様にします。
|
もう一つ、修正しないといけないことがあります。Visual C++ のプロパティファイルで、 ここには常にリンクされるライブラリが列挙されています。これは次のファイルです。
c:\Program Files\Microsoft Visual Studio 8\VC\VCProjectDefaults\corewin_express.vsprops
このファイルはテキストファイルで、エディターで開くとつぎのようになっています。
<?xml version="1.0"?>
<VisualStudioPropertySheet
ProjectType="Visual C++"
Version="8.00"
Name="Core Windows Libraries">
<Tool
Name="VCLinkerTool"
AdditionalDependencies="kernel32.lib" />
</VisualStudioPropertySheet>
灰色の部分を次で置き換えます。(見やすくするために行を折ってありますが、行を折ってはいけません。)
kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib
OpenGL のソースファイルは通常の C 言語ファイルと同様に作成します。 ビルドする前にライブラリを追加しないといけません。仮にプロジェクト名が GL_Project であれば 次のようにします。
Libに移動します。
OpenGL32.Lib, GlAux.Lib, GlU32.Libを選択します (Ctrl キーを押しながら、マウスで選択)。すると直後に 次のような表示が現れます。(横に長いので後ろ半分を切ってあります。)
|
|
ライブラリを追加した後で、メニューの「ビルド」/「***のビルド」(*** はプロジェクト名) を選べば、ビルド (= コンパイル + リンク) を実行し、 そのあとで、「デバッグ」/「デバッグなしで開始」をすると実行してくれます。
作業を終了したときはメニューの「ファイル」/「ソリューションを閉じる」を選びます。 中断した作業を再開するには、 「最近作ったプロジェクト」が表示されているのでそこから選択します。