在 Xcode 里面使用 Lua
关注到 Lua,是源于看到一个 《最值得阅读学习的 10 个 C 语言开源项目代码》 的 post,里面提到 Lua 这个项目,然后就想着去看看 Lua 的源码,大概这样。
粗略过了一下云风大神的《Lua 源码欣赏》,想着自己怎么开始,然后就有着在 Xcode 建了一个 C Project,然后调用 Lua 代码的想法,所以就有了这篇博客,但其实也只是拾人牙慧,主要供自己以后参考。
- 使用 Xcode 新建一个 C Project,在
File > New > Project
下新建一个 Project。但是新建的是macOS
下的Command Line Tool
。其它的就跟你新建项目一样了,并无太特别的地方。
-
然后可以把 Simple Lua Api Example 的 C 代码复制到
main.c
。为了方便,我会把status = luaL_loadfile(L, "script.lua");
改成status = luaL_loadstring(L, "print('a')");
。 -
这个时候,你就会发现在 include 那些地方报错了,在命令行环境下,我们是可以这么执行的
gcc -o test test.c -I/Users/Roger/.asdf/installs/lua/5.3.3/include -L/Users/Roger/.asdf/installs/lua/5.3.3/lib -llua -lm
(我使用 asdf 做版本管理)。所以我们需要解决怎么把 Lua 的头文件,库加到 Xcode 里面。可以参考 How to Link C++ Librares in XCode [Specifically Magick++] 来把命令行的设置加到 Xcode 里面就可以了。简单来说就是增加 Xcode Build Setting 里面的Header Search Paths
,Library Search Paths
和Other Linker Flags
,如下面两张图所示。
- 最后,整个项目就可以跑起来了😏