3

この非常に役立つ投稿で説明されているプロセスに従って、LuaをデフォルトのXcodeテンプレートプロジェクトに正常に追加し、「Hello、world」を取得しました。テキスト印刷。

ただし、Luaを既存のCocos2D / Box2dプロジェクトに追加しようとすると、まったく同じプロセスに従って、コンパイルエラーが発生します。

アーキテクチャi386の未定義のシンボル:

「luaL_newstate()」、...から参照

このエラーに関する私の検索結果は、これらの考えられる問題の1つを参照していますが、私の場合は問題ないと思います。

  • ターゲットのビルドフェーズ->ソースのコンパイル-ただし、同じLua.cファイルがデフォルトのテンプレートプロジェクトと私のCocos2D/Box2dプロジェクトの両方にあります
  • デフォルトプロジェクトのヘッダー検索パスをCocos2D/Box2dプロジェクトのヘッダー検索パスと一致するように設定しましたが、テンプレートは引き続き正常にコンパイルされます。
  • テンプレートプロジェクトで使用されるすべてのフレームワークは、私のCocos2D/Box2dプロジェクトにもあります。

私は何が欠けていますか?

どんな助けでも大歓迎です。ありがとう!

4

1 に答える 1

3

I've done this integration recently, and the problem that you have there is that the Lua files are written in C, and Box2D is C++.

You will need to wrap the Lua includes like that:

#ifdef __cplusplus
extern "C" {
#include "lua.h"
#include "lualib.h"
#include "lauxlib.h"
}
#endif

That should fix the issues, if not post a comment with the error you are getting.

于 2012-11-10T01:07:42.010 に答える