无法在Xcode中设置Lua

时间:2014-10-02 18:14:40

标签: c++ xcode lua

如何在Xcode的项目中包含Lua?

我已经通过网站上的说明安装了Lua(curl,extract,make macosx install等)。

我可以参考lua

extern "C" {
#include "lua.h"
#include "lualib.h"
#include "lauxlib.h"
}

但是当我去使用它时,我得到一个错误(甚至写下像下面那样简单的东西)

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

它告诉我:

Undefined symbols for architecture x86_64:
  "_luaL_newstate", referenced from:
      _main in main.o
  "_lua_close", 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)

非常感谢任何建议。如果您需要更多信息,请告诉我,我可以对其进行编辑。谢谢!

编辑: 添加了-llua标志(SFML包含/ usr / local / lib和include)。现在得到“忽略文件/usr/local/lib/liblua.a,文件是为存档而构建的,而不是被链接的架构(i386):/ usr / local / lib / liblua.a”

EDIT2: 我将Base SDK更改为最新OS X(OS X 10.9)并将Build Active Architecture仅更改为“是”,现在它将进行编译。

1 个答案:

答案 0 :(得分:2)

在Xcode中,选择< ProjectName>左窗格顶部的蓝色图标(所有源都在其中),然后在主窗口中选择目标下的目标。在Build Settings选项卡中,选择All而不是Basic并设置以下参数:

Other Linker Flags = -llua
Header Search Paths = /usr/local/include
Library Search Paths = /usr/local/lib

假设Lua头安装在/ usr / local / include中,而liblua.a安装在/ usr / local / lib中。

您也可以使用搜索字段来查找它们。