7

アプリケーションの組み込みスクリプト言語として Lua 5.1 を選択しましたが、PowerPC で LynxOS を実行するレガシー プラットフォームにアプリケーションを移植すると、うまくいかないようです。

PCで次のコードを実行すると、すべてがうまくいきます。

void test_lua()
{
  const char *code = "foo = 5\n";
  double vfoo=0;
  lua_State *L = luaL_newstate();

  (void)luaL_loadbuffer(L, code, strlen(code), "line");
  (void)lua_pcall (L, 0, 0, 0);

  lua_getglobal(L, "foo");
  vfoo = lua_tonumber(L, -1);

  lua_close(L);

  myTrace("vfoo = %f", vfoo);
  for(;;);
}

PC (Visual C++ 6.0) で "vfoo = 5.000000" を期待していました

しかし、LynxOS/PowerPC では "vfoo = 0.000000" になりました。

では、LynxOS/PowerPC 上の Lua はどうなっているのでしょうか? ビッグ エンディアン マシン用の構成がいくつかあるのではないかと思い、「luaconf.h」で探しましたが、何も見つかりませんでした。構成項目「LUA_USE_POSIX」も試しましたが、助けにはなりませんでした。

lua プログラミングの典型的なプラットフォームではないことはわかっています。ただし、提案は大歓迎です。

4

1 に答える 1