2018年10月04日

調子に乗って wxLua

 Love2D (LÖVE) を使ったプログラミングがなかなか面白いので、調子に乗って wxLua なるものに手を出してしまった。

20181004-1.png

 上記の公式ウェブサイトは、2012 年で開発が止まっていて、wxWidgets 2.9 までしか対応していないように見える。しかし、公式じゃないが細々と開発を続けている人がいる。一番活発なのは Paul Kulchenko 氏。この人は、Lua 用の IDE として名高い ZeroBrane Studio の開発者である。Lua への本気度は信じるに値する。

 Love2D (LÖVE) では、単体のアプリにスクリプトを読ませることで、Lua プログラムを実行するようになっていた。同じように、wxWidgets の機能を一通り取り入れたアプリを作成して、それが Lua スクリプトを実行するようにしてみた。どれぐらい大きくなるか、と思ったのだが、Mac 64 ビットアプリで 23 MB。まあ許容範囲じゃない?

20181004-2.png

 さらに調子に乗って、Windows 版も作成してみた(32ビット版)。mingw32 のクロスコンパイラを使う。こちらは 60 MB。もしかしてシンボル情報とか残ったままだったかな。確認しなきゃ。

20181004-3.png

 なお、Windows を 32 ビット版にしたのは、64 ビット版だと EasyWine で動かないから。また、wxLua 本体の方も、sizeof(long) = sizeof(void *) が前提になっているコードがかなりあって、mingw64 のクロスコンパイラ(long は 32 ビット、void * は 64 ビット)に対応するには修正が必要、というのもある。

 Windows 32 ビット版のアプリを EasyWine で動かしてみた。ビルドからテスト実行まで Mac 上で完結するのは嬉しい。

20181004-4.png

 プロジェクトはこちらです:GitHub - wxLuaApp。Xcode 上で自分でビルドすることしか考えてないので、Mac 以外のプラットフォームでビルドするのは面倒です。まあ、ぼちぼち進めていきます。

Posted at 2018年10月04日 23:46:08
email.png