サイト移設のお知らせ

本ホスティングサービスは、2012年5月24日に終了することになりました。それに伴い、以下の目次の文書を下記のサイトに移行しました。

====== Supportdoc.net ======

今後ともどうぞよろしく御願い申し上げます。

工学社刊「はじめてのLuaプログラミング」著者サポートページ

2008年12月出版の「はじめてのLuaプログラミング」(清水美樹著、工学社刊)の著者によるサポートページです。

なお、本書および本ページに関する御質問は、工学社ホームページのサポートコーナーの御質問フォームより送信いただければ、同社を経由して著者が御回答させていただきます。

サンプルプログラムの欠落について

いくつかの説明補足

本書で用いる各ソフトウェアの最新版を直接入手する方法


サンプルプログラムの欠落について

本書に添付してありますサンプルプログラムのうち、112ページのリスト4-5「LuaTest.c」が欠落しておりました。
申し訳ありません。こちらから御覧いただけます。 URLを直接ダウンロードして御使用の場合は、ファイル名を「LuaTest.c」に変更して御使用ください。
なお、本サイトの文字コードは原則的にUTF-8を用いておりますが、「LuaTest.c」の文字コードはWindowsでのプログラム用にSHIFT_JISで掲載してありますので、ブラウザから御覧になり日本語部分が文字化けする場合は、ブラウザのエンコード設定を「SHIFT_JISに直して御覧ください。

いくつかの説明補足

本書につきまして、いくつかの箇所で説明が具体性に欠けるという御指摘を読者様からいただきました。 ここにお詫びの上補足させていただきます。


本書98ページの「EclipseのプロジェクトLuaTestの作成」方法について


本書104ページ以降の「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以降のCプログラムの書き方

本書のバージョンから変わった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年近くもバージョンアップされていなかったので、もしこれでプロジェクト停止なんてことになったらショッパイなと不安を覚えていたのですが、ここにきて思い出したようにバージョンアップが加速しました。どうしたのでしょうか。筆者がこのほうな本を書きはじめたのがバレたのでしょうか。