如何从Xcode的C++项目链接到Lua API

我下载了版本为5.2.2的Lua源代码,并在我的macOS 10.8(Mountain Lion)上构建了Lua。

我使用以下内容进行构建:

make macosx install

以下是/usr/local/上安装的内容:

bin: lua luac
include: lua.h luaconf.h lualib.h lauxlib.h lua.hpp
lib: liblua.a
man/man1: lua.1 luac.1

我启动了Xcode(4.6)并创建了一个新的C++控制台项目。然后我包括了以下头文件:

#include "lua.h"
#include "lauxlib.h"
#include "lualib.h"

然后,我编写了一个小程序,创建一个新的lua状态,然后加载所有lua库,并在最后关闭lua状态,如下所示:

lua_State*L = luaL_newstate();
luaL_openlibs(L);
lua_close(L);

我的构建失败了,出现以下错误:

Undefined symbols for architecture x86_64:
"luaL_newstate()", referenced from:
    _main in main.o
"luaL_openlibs(lua_State*)", referenced from:
    _main in main.o
"lua_close(lua_State*)", referenced from:
    _main in main.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

如果有人能告诉我我做错了什么,我将非常感激。

点赞