cocos2dx 3.2 创建不了lua项目怎么办

2015年02月11日 11:33 0 点赞 0 评论 更新于 2025-11-21 16:14

在使用 Cocos2d-x 3.0 创建默认的 Lua 项目时,Android 项目存在严重的不完整性问题。生成的项目模板根本不包含 C++ 编译过程,这就导致项目 libs 目录下无法生成 SO 文件。

我曾尝试修改这个默认的 Android 项目模板,但修改量极大,花费了大半天时间才勉强搞定。因此,我的建议是,不要直接使用 Cocos 来创建 Lua 项目,而是创建普通的 C++ 项目。当普通的 C++ 项目编译通过后,就可以在 libs 目录下得到所需的 SO 库。因为对于 Android 的 Lua 项目而言,其真正需要的并非 C++ 代码,而是一个 SO 库文件。

在 Visual Studio(VS)环境下,项目可以编译通过。然而,默认的 Android Lua 项目模板存在诸多问题,需要进行大量的配置和修改才能正常运行。虽然默认的 Android 项目能够编译并运行,但实际上它并未对项目所需的 C++ 代码进行任何编译处理。所以,你既看不到 libs 目录,也看不到 SO 库,这样的项目只是一个空架子,即便能运行也没有实际意义,因为关键代码都包含在 SO 库中。

既然 Android Lua 项目对 C++ 的依赖仅仅是 SO 库,那么从其他已经生成 SO 库的项目中获取并使用该库也是可行的。但需要注意的是,其他项目的 SO 库不一定符合要求,可能不包含 Lua 库,而且 main.cpp 的逻辑处理也可能不同。

最佳的解决方案是直接使用 Cocos2d-x 3 自带的 Lua 项目示例,该示例能够正常运行。在配置 Cocos2d-x 项目的过程中,确实会遇到很多问题。为此,官方推出了一个非常方便的 quick-cocos2d 框架,但目前该框架仅支持到 Cocos2d-x 2.3 版本。

Cocos 自带的 Lua 项目是可以编译通过并运行的。运行成功后,会在 Android 项目下自动生成 libs 目录,其中包含所需的 SO 库。据了解,大约在 10 月份左右,quick-cocos2d 将会支持 3.0 以上的版本,希望届时项目配置能不再如此繁琐。

PS:进行 Cocos2d-x 项目移植时,确实会遇到各种麻烦。

作者信息

boke

boke

共发布了 3994 篇文章