Lua for ARMv7/ARMv7s

Lua for ARMv7/ARMv7s

本文关键字:ARMv7s ARMv7 for Lua      更新时间:2023-10-16

我正在xcode上使用cocos2d-x编写游戏,并且我在为armv7/7s编译正确版本的Lua时遇到问题。

下面是我得到的错误信息:

ld: warning: ignoring file 
/Users/seriousgames/Documents/PopulationTest/PopulationTest/libs/lua/liblua.a, file was built for archive which is not the architecture being linked (armv7): /Users/seriousgames/Documents/PopulationTest/PopulationTest/libs/lua/liblua.a
Undefined symbols for architecture armv7:
  "_luaL_newstate", referenced from:
      Behavior::onTerminate(Status) in Behavior.o
  "_luaL_openlibs", referenced from:
      Behavior::onTerminate(Status) in Behavior.o
ld: symbol(s) not found for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)
如果我选择编译macosx(而不是iOS), LUA确实有效。

编辑:我最终使用了旧版本的Lua,版本5.1.4,并遵循这里的说明:http://blog.stokedsoftware.com/blog/2012/02/05/scripting-ios-games-with-lua-part-ii/此方法不需要lualib。作为一个外部库,xcode将lua源代码构建到项目中。

注意:虽然他的代码是在Objective C中,我发现他的方法确实适用于cocos2d-x。

他特别从构建中排除了lua.c和luac.c文件。我选择不这样做,但是我注释掉了int main()函数,因为它们会与main.m中的函数冲突。我将标记这个问题的答案,但我仍然有兴趣知道如何构建liblua。A为arm7/7s

参见edit:

编辑:我最终使用了旧版本的Lua,版本5.1.4,并遵循这里的说明:http://blog.stokedsoftware.com/blog/2012/02/05/scripting-ios-games-with-lua-part-ii/此方法不需要lualib。一个外部库,xcode将lua源代码构建到项目中。

注意:虽然他的代码是在Objective C中,但我发现他的方法确实适用于cocos2d-x。

他特别从构建中排除了lua.c和luac.c文件。我选择不这样做,但是我注释掉了int main()函数,因为它们会与main.m中的函数冲突。我将标记这个问题的答案,但我仍然有兴趣知道如何构建liblua。A为arm7/7s