菜鸟教程小白 发表于 2022-12-12 10:10:13

c++ - 用于 ARMv7/ARMv7s 的 Lua


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

<p>这是我收到的错误消息:</p>

<pre><code>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:
&#34;_luaL_newstate&#34;, referenced from:
      Behavior::onTerminate(Status) in Behavior.o
&#34;_luaL_openlibs&#34;, 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)
</code></pre>

<p>如果我选择为 macosx(不是 iOS)编译,LUA 确实可以工作。 </p>

<p><strong>编辑:</strong>我最终使用了旧版本的 Lua,版本 5.1.4,并按照此处的说明进行操作:<a href="http://blog.stokedsoftware.com/blog/2012/02/05/scripting-ios-games-with-lua-part-ii/" rel="noreferrer noopener nofollow">http://blog.stokedsoftware.com/blog/2012/02/05/scripting-ios-games-with-lua-part-ii/</a>
此方法不需要 lualib.a 外部库,而是 xcode 将 lua 源构建到项目中。 </p>

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

<p>他专门从构建中排除了 lua.c 和 luac.c 文件。我选择不这样做,但我注释掉了 int main() 函数,因为它们会与 main.m 中的函数发生冲突。我会标记这个问题的答案,但我仍然想知道如何为 arm7/7s 构建 liblua.a。</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>查看编辑:</p>

<p>编辑:我最终使用了较旧的 Lua 版本,版本 5.1.4,并按照此处的说明进行操作:<a href="http://blog.stokedsoftware.com/blog/2012/02/05/scripting-ios-games-with-lua-part-ii/" rel="noreferrer noopener nofollow">http://blog.stokedsoftware.com/blog/2012/02/05/scripting-ios-games-with-lua-part-ii/</a>此方法不需要 lualib.a 外部库,而是 xcode 将 lua 源构建到项目中。</p>

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

<p>他专门从构建中排除了 lua.c 和 luac.c 文件。我选择不这样做,但我注释掉了 int main() 函数,因为它们会与 main.m 中的函数发生冲突。我会标记这个问题的答案,但我仍然想知道如何为 arm7/7s 构建 liblua.a。</p></p>
                                   
                                                <p style="font-size: 20px;">关于c&#43;&#43; - 用于 ARMv7/ARMv7s 的 Lua,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/15876532/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/15876532/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: c&#43;&#43; - 用于 ARMv7/ARMv7s 的 Lua