2008年12月出版の「はじめてのLuaプログラミング」(清水美樹著、工学社刊)の著者によるサポートページです。
なお、本書および本ページに関する御質問は、工学社ホームページのサポートコーナーの御質問フォームより送信いただければ、同社を経由して著者が御回答させていただきます。
本書につきまして、いくつかの箇所で説明が具体性に欠けるという御指摘を読者様からいただきました。 ここにお詫びの上補足させていただきます。
本書98ページの「EclipseのプロジェクトLuaTestの作成」方法について
本書では簡単のため、用いるソフトウェアを全て添付CDに収録してあります。最新版ではないかも知れませんが、もしバージョンアップにより仕様が変わったりすると厄介ですから、プログラミングやオープンソースソフトウェアの扱いに慣れておられない方は、まずそちらをお使いいただくとよいと思います。
そして、いよいよ最新版に挑戦される方。ここで各ソフトウェアのダウンロードサイトをご紹介しましょう。
Eclipse日本語版
Eclipseの日本語化はいくつかのコミュニティで行われていますが、本書で用いる日本語版を提供している「MergeDoc Project」のサイトは以下のURLにあります。
http://mergedoc.sourceforge.jp/
日本語サイトで、親切な説明が書いてありますから問題ないとは思いますが、トップページの「ダウンロード」という欄に大きなボタンが二つあります。左のほうが最新の「Eclipse 3.4 Ganymede Pleiades All in One」のダウンロードボタンですので、これをクリックします。(右側はひとつ前のEurope版)。
ダウンロードサイトへ移動できます。たくさんの項目があるように見えますが、選択するのは欄の一番上にある、二行のキレイな「Download」ボタンの中からです。
本書で用いるのは「C/C++」と書かれた欄のボタンです。Javaの実行環境をまたインストールしていない方は「Full All in One(JREあり)」の青系のボタン、Javaはすでにインストールしてあるという方は「Standard All in One(JREなし)」の茶系のボタンをクリックします。

「JREありのC/C++用」を選んだ場合、たとえばこのようなものが降りてくる
Lua及びLuaライブラリ
LuaのWindows版を入手するのはほんのちょっとタイヘンです。
本書第3章のように、Windowsのコマンドプロンプトウィンドウにおいて、luaコマンドでLuaプログラムを使うだけなら、Luaのホームページにおいて以下の「luaforwindows」サイトが紹介されています。
http://luaforge.net/frs/?group_id=377
しかし本書を利用されるのであれば、どっちみちLua用のCライブラリやドキュメントもダウンロードしたくなるでしょうから、以下のURLであればLuaに関するほぼ全てのファイルが得られます。
http://luaforge.net/frs/?group_id=110&release_id=1188
上から順に見ていきましょう。まず、「Other Files」の欄です。「その他」を一番先にというのは違和感もあるかも知れませんが、以下を選ぶのが便利です。
ドキュメント lua5_1_4_Docs_html.zi
サンプルファイル plua5_1_4_Examples.zip」
ドキュメントの中には、本書で参考にしている「Lua Reference Manual」が入っています。一方「サンプルファイル」のほうは、こちらは「Luaのサンプル」ですので、本書では特に参照していません。本書では書ききれなかったような進んだ内容のサンプルもありますので、本書での学習を終えられたら、そうしたものも利用できるかどうか、ガンバってみてください。
次に「Libraries」の欄を見ます。ここには、「さまざまなOSにおける、さまざまなC」でもって、Lua用のCライブラリをコンパイルしたものが並んでいます。本書で用いるのは「Winidows版」の「MinGWバージョン5」です。あいにく、2008年12月時点で「5」用は出ていませんので、ダウンロードするとしたら「
lua5_1_4_Win32_mingw4_lib.zip
ということになるでしょう。
最後に、「Executables」という欄があります。これが「Lua本体」とも言える「Luaの実行プログラム」です。2008年12月においては
lua5_1_4_Win32_bin.zip
が最新版です。「lua5_1_4_Win64_bin.zip」という64ビット環境用もありますが、筆者はあいにく動作確認をしておりません。
MinGW
MinGWのダウンロードサイトは以下のURLです。
http://sourceforge.net/project/showfiles.php?group_id=2435
このダウンロードサイトにもたくさんの項目があり、「Package」という欄のものをクリックするとさらに詳細な項目のダウンロード一覧になります。おとなしく、自動インストーラ「MinGW5.1.4」と書かれているリンクをクリックして、「MinGW-5.1.4.exe」ファイルを入手するのが無難でしょう(バージョン番号は2008年12月におけるもの)。
筆者の経験では、MinGWのホームページ自体が「なぜか表示不能」状態なのに出くわしたことが1回だけありました。でも翌日には復帰していましたので、インストールサーバに接続できなかったときには時間を置いて再アクセスするとよいと思います。
IUPライブラリ
本書ではIUP「2.6」を用いていますが、なんとその出版直前に新しいバージョン「2.7」が出てしまいました。と思ったら出版直後に「3.0ベータ」になってしまいました。
最新版のIUPは以下のサイトからダウンロードできます。
http://sourceforge.net/project/showfiles.php?group_id=241310
ダウンロード一覧から「Windows Binaries」をクリックすると、さらに細かい一覧になります。バージョン「3.0ベータ」の場合は以下を選びます。
iup3_0_beta1_Win32_mingw4_lib.zip
本書のバージョンから変わったIUP2.7以降のバージョンでは、IupLuaを用いるためのCプログラム(本書128ページリスト4-10)に少し違いがあります。「少し」ではありますが、そのままでは動きません。IUP2.7以降を使う場合は、まず、関数「main」のとる引数が違います。
リスト4-10の修正その1
修正前 int main(void) 修正後 int main(int argc, char* argv[])
めんどくさい変更になりましたが、本書で使う範囲では、「形式」の問題にすぎません。まず、関数「main」のとる引数が...と書きましたが、実は「main」には罪はなく、IUPの関数「IupOpen」の引数が違うからです。「/*Iup自体を使えるようにする*/」と注釈のついた下の部分を、「その2」のように直します。
リスト4-10の修正その2
修正前 IupOpen(); 修正後 IupOpen(&argc, &argv);
これで終わりです。本書のLuaのサンプルコードには修正の必要はありません。

IUP2.7 以降でも動きました
筆者が本書を書いていたとき、IUP2.6は2007年11月ごろから1年近くもバージョンアップされていなかったので、もしこれでプロジェクト停止なんてことになったらショッパイなと不安を覚えていたのですが、ここにきて思い出したようにバージョンアップが加速しました。どうしたのでしょうか。筆者がこのほうな本を書きはじめたのがバレたのでしょうか。